| 

.NET C# Java Javascript Exception

5
Ich nochmal :)

Was ist der Untschied und wann soll ich was benutzen?
News:
19.09.2009
Pumpit 177 1 5
2 Antworten
7
Convert.ToInt32 ist ident zu int.Parse.

Alternativ gibt es noch int.TryParse. Dies wirft keine Exception wenn die Konvertierung nicht durchgeführt werden kann.

Die Verwendung hängt vom Anwendungsfall (wie eigentlich immer) ab.
19.09.2009
gfoidl 9,4k 3 5
Ah interessant, aber bei int.TryParse wird doch dann spätestens eine Exception geworfen wenn eine Rechenopertion ausgeführt wird oder? Verschleppt man damit nicht einfach das Problem?
Pumpit 19.09.2009
2
TryParse gibt einen bool zurück der angibt ob die Konvertierung erfolgreich war oder nicht. Dies kann geprüft werden (if). Dies ist vorzuziehen denn Exceptions sollten nicht zur Ablaufsteuerung verwendet werden.
gfoidl 19.09.2009
Zudem wurde irgendwo nachgewiesen, dass TryParse wesentlich schneller geht, als ein try-Block in welchem versucht wird, den Wert selbst zu wandeln.
balu 25.09.2009
Dazu brauchst du nur mit dem Reflector schauen was passiert. Bei TryParse wird das unsafe zuerst geprüft ob der String eine Zahl repräsentiert. Es wird beim TryParse kein try-catch intern verwendet.
gfoidl 25.09.2009
3
Convert.ToInt32() gibt es für 18 verschiedene Datentypen von Boolean bis String. Eventuell wirft die Funktion eine Runtime-Exception.
Der typecast ist nur für wenige kompatible DatenTypen syntaktisch erlaubt, und kann zur Laufzeit zu einem Informationsverlust führen, wenn ein Überlauf entsteht.
19.09.2009
BeachBlocker 617 3

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH