ich in einem anderen Beitrag bemerkt hatte jemand so etwas getan:System.Convert.ToInt vs (int)
double d = 3.1415;
int i = Convert.ToInt32(Math.Floor(d));
Warum sie die Funktion convert verwendet haben, statt:
double d = 3.1415;
int i = (int)d;
die hat einen impliziten Floor und konvertiert.
Auch mehr Besorgnis erregend, bemerkte ich in einiger Code Produktion Ich lese:
double d = 3.1415;
float f = Convert.ToSingle(d);
Ist das das gleiche wie:
float f = (float)d;
Sind die alle sonst impliziten Konvertierungen nur in der Convert-Klasse der Vollständigkeit halber oder dienen sie einem Zweck? Ich kann eine Notwendigkeit für .ToString() verstehen, aber nicht den Rest.
Vertauscht 'Int32.Parse (String): Int32' tatsächlich eine Zeichenfolge in ein int? –
Int32.Parse konvertiert eine "numerische" Zeichenfolge in ein int und es wird eine Ausnahme ausgelöst, wenn die Konvertierung fehlschlägt. Int32.TryParse gibt false zurück, wenn die Konvertierung während der Konvertierung fehlschlägt.ToInt32 gibt 0 zurück, wenn die Konvertierung fehlschlägt. –