Sobes.tech
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ă");
}