C# - Typeconversie
Typeconversie is het converteren van het ene type gegevens naar een ander type. Het wordt ook wel Typecasting genoemd. In C# heeft typecasting twee vormen −
-
Impliciete typeconversie − Deze conversies worden door C# op een typeveilige manier uitgevoerd. Dit zijn bijvoorbeeld conversies van kleinere naar grotere integraaltypen en conversies van afgeleide klassen naar basisklassen.
-
Expliciete typeconversie − Deze conversies worden expliciet gedaan door gebruikers die de vooraf gedefinieerde functies gebruiken. Voor expliciete conversies is een cast-operator vereist.
Het volgende voorbeeld toont een expliciete typeconversie −
Live demo
using System;
namespace TypeConversionApplication {
class ExplicitConversion {
static void Main(string[] args) {
double d = 5673.74;
int i;
// cast double to int.
i = (int)d;
Console.WriteLine(i);
Console.ReadKey();
}
}
}
Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −
5673
C#-type conversiemethoden
C# biedt de volgende ingebouwde typeconversiemethoden −
| Sr.nr. | Methoden en beschrijving |
|---|---|
| 1 | ToBoolean Converteert een type naar een Booleaanse waarde, waar mogelijk. |
| 2 | ToByte Converteert een type naar een byte. |
| 3 | ToChar Converteert een type waar mogelijk naar een enkel Unicode-teken. |
| 4 | ToDateTime Converteert een type (geheel getal of tekenreekstype) naar datum-tijdstructuren. |
| 5 | ToDecimaal Converteert een type met drijvende komma of geheel getal naar een decimaal type. |
| 6 | ToDouble Converteert een type naar een dubbel type. |
| 7 | ToInt16 Converteert een type naar een 16-bits geheel getal. |
| 8 | ToInt32 Converteert een type naar een 32-bits geheel getal. |
| 9 | ToInt64 Converteert een type naar een 64-bits geheel getal. |
| 10 | ToSbyte Converteert een type naar een ondertekend bytetype. |
| 11 | ToSingle Converteert een type naar een klein getal met drijvende komma. |
| 12 | ToString Converteert een type naar een tekenreeks. |
| 13 | ToType Converteert een type naar een gespecificeerd type. |
| 14 | ToUInt16 Converteert een type naar een niet-ondertekend int-type. |
| 15 | ToUInt32 Converteert een type naar een unsigned long type. |
| 16 | ToUInt64 Converteert een type naar een groot geheel getal zonder teken. |
Het volgende voorbeeld converteert verschillende waardetypes naar stringtype −
Live demo
using System;
namespace TypeConversionApplication {
class StringConversion {
static void Main(string[] args) {
int i = 75;
float f = 53.005f;
double d = 2345.7652;
bool b = true;
Console.WriteLine(i.ToString());
Console.WriteLine(f.ToString());
Console.WriteLine(d.ToString());
Console.WriteLine(b.ToString());
Console.ReadKey();
}
}
}
Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −
75 53.005 2345.7652 True
C Taal