Junior — Middle
Czym różnią się zachowania metod TryParse i Parse w przypadku nieudanej konwersji ciągu na liczbę?
sobes.tech AI
Odpowiedź od AI
Metoda Parse wyrzuca wyjątek FormatException lub OverflowException, jeśli konwersja ciągu na liczbę się nie powiedzie, ponieważ ciąg nie odpowiada formatowi liczby lub przekracza zakres typu.
Metoda TryParse, zamiast wyrzucać wyjątek, zwraca wartość logiczną false, jeśli konwersja się nie powiodła, i umieszcza wynik w parametrze wyjściowym. Pozwala to uniknąć obsługi wyjątków i pisać bardziej wydajny i bezpieczny kod.
Przykład:
string input = "abc";
int number;
// Parse wyrzuci wyjątek
// int result = int.Parse(input); // FormatException
// TryParse zwróci false, nie wyrzucając wyjątku
bool success = int.TryParse(input, out number);
if (success)
{
Console.WriteLine($"Przekonwertowana liczba: {number}");
}
else
{
Console.WriteLine("Konwersja nie powiodła się");
}