Sobes.tech
Junior — Middle

Milline on TryParse ja Parse meetodite käitumise erinevus, kui stringi konverteerimine numbriks ebaõnnestub?

sobes.tech AI

Vastus AI-lt

Meetod Parse heitub välja FormatException või OverflowException, kui stringi konverteerimine numbriks ebaõnnestub, näiteks kuna string ei vasta numbrivormingule või ületab tüübi piirid.

TryParse meetod tagastab selle asemel, et heita välja erandi, loogilise väärtuse false, kui konverteerimine ebaõnnestub, ja asetab tulemuse väljundparameetrisse. See võimaldab vältida erandite käsitlemist ning kirjutada tõhusamat ja turvalisemat koodi.

Näide:

string input = "abc";
int number;

// Parse viskab erandi
// int result = int.Parse(input); // FormatException

// TryParse tagastab false ilma erandit heitmata
bool success = int.TryParse(input, out number);
if (success)
{
    Console.WriteLine($"Konverteeritud number: {number}");
}
else
{
    Console.WriteLine("Konversioon ebaõnnestus");
}