C# Typ Casting
C# Typ Casting
Typumwandlung ist, wenn Sie einen Wert eines Datentyps einem anderen Typ zuweisen.
In C# gibt es zwei Arten der Umwandlung:
- Implizites Casting (automatisch) – Konvertieren eines kleineren Typs in einen größeren Typ
char
->int
->long
->float
->double
- Explizites Casting (manuell) – Konvertieren eines größeren Typs in einen kleineren Typ
double
->float
->long
->int
->char
Implizites Casting
Implizites Casting erfolgt automatisch, wenn ein kleinerer Typ an einen größeren Typ übergeben wird:
Beispiel
int myInt = 9;
double myDouble = myInt; // Automatisches Casting: int zu double
Console.WriteLine(myInt); // Ausgänge 9
Console.WriteLine(myDouble); // Ausgänge 9
Explizites Casting
Explizites Casting muss manuell durchgeführt werden, indem der Typ in Klammern vor den Wert gesetzt wird:
Beispiel
double myDouble = 9.78;
int myInt = (int) myDouble; // Manuelles Gießen:: double bis int
Console.WriteLine(myDouble); // Ausgänge 9.78
Console.WriteLine(myInt); // Ausgänge 9
Typkonvertierungsmethoden
Es ist auch möglich, Datentypen explizit mithilfe integrierter Methoden zu konvertieren, z Convert.ToBoolean
, Convert.ToDouble
, Convert.ToString
, Convert.ToInt32
(int
) und Convert.ToInt64
(long
):
Beispiel
int myInt = 10;
double myDouble = 5.25;
bool myBool = true;
Console.WriteLine(Convert.ToString(myInt)); // int in string umwandeln
Console.WriteLine(Convert.ToDouble(myInt)); // int in double umwandeln
Console.WriteLine(Convert.ToInt32(myDouble)); // double in int umwandeln
Console.WriteLine(Convert.ToString(myBool)); // bool in string umwandeln
Warum Konvertierung?
Oft ist keine Typkonvertierung erforderlich. Aber manchmal muss man es auch. Schauen Sie sich das nächste Kapitel an, wenn Sie mit Benutzereingaben arbeiten, um ein Beispiel dafür zu sehen.