Junior — Middle
Care este diferența de comportament între metodele TryParse și Parse în cazul în care conversia unui șir în număr eșuează?
sobes.tech AI
Răspuns de la AI
Metoda Parse aruncă o excepție FormatException sau OverflowException dacă conversia șirului în număr eșuează, fie pentru că șirul nu corespunde formatului numeric, fie pentru că depășește limitele tipului.
Metoda TryParse, în loc să arunce o excepție, returnează valoarea booleană false dacă conversia nu reușește și plasează rezultatul într-un parametru de ieșire. Acest lucru permite evitarea gestionării excepțiilor și scrierea unui cod mai eficient și mai sigur.
Exemplu:
string input = "abc";
int number;
// Parse va arunca o excepție
// int result = int.Parse(input); // FormatException
// TryParse va returna false fără a arunca excepții
bool success = int.TryParse(input, out number);
if (success)
{
Console.WriteLine($"Numărul convertit: {number}");
}
else
{
Console.WriteLine("Conversie nereușită");
}