Programmation en C# – La conversion de type
Convertit un type de données en un autre type, il est également connu sous le nom de Type Casting. Dans C#, il y a deux types de conversion:
- Conversion de type implicite: Ces conversions sont effectuées par C# de manière sécurisée.
- Conversion de type explicite: Ces conversions sont effectuées explicitement par l’utilisateur, en utilisant des fonctions prédéfinies dans C#. Les conversions explicites nécessitent un opérateur de casting.
L’exemple suivant montre une conversion de type explicite:
using System; namespace ConversionApp { class ExpliciteConversion { static void Main(string[] args) { double d = 9867.99; int i; // caster un double vers un entier. i = (int)d; Console.WriteLine(i); Console.ReadKey(); } } }
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant:
9867
Méthodes de conversion de type en C #
Voici la liste des méthodes pour convertir différents types en C#:
Méthodes | Description |
---|---|
ToBoolean | Convertit un type en valeur booléenne. |
ToByte | Convertit un type en octet. |
ToChar | Convertit un type en un seul caractère Unicode. |
ToDateTime | Convertit un type (nombre entier ou type de chaîne) en structures date-heure. |
ToDecimal | Convertit un type flottant ou entier en un type décimal. |
ToDouble | Convertit un type en double. |
ToInt16 | Convertit un type en un entier de 16 bits. |
ToInt32 | Convertit un type en un entier de 32 bits. |
ToInt64 | Convertit un type en un nombre entier de 64 bits. |
ToSbyte | Convertit un type en un type d’octet signé. |
ToSingle | Convertit un type en un petit nombre à virgule flottante. |
ToString | Convertit un type en string. |
ToType | Convertit un type en un type spécifié. |
ToUInt16 | Convertit un type en un type int non signé. |
ToUInt32 | Convertit un type en un type long non signé. |
ToUInt64 | Convertit un type en un entier non signé. |
L’exemple suivant convertit différents types de valeurs en type string:
using System; namespace ConversionApp { class ConversionString { static void Main(string[] args) { int i = 95; float f = 93.005f; double d = 9687.1423; bool b = true; Console.WriteLine(i.ToString()); Console.WriteLine(f.ToString()); Console.WriteLine(d.ToString()); Console.WriteLine(b.ToString()); Console.ReadKey(); } } }
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant:
95 93.005 9687.1423 True