====== Les types de variables simples et leur conversion ====== Les principaux types de base du framework .NET sont : ^ Type ^ Description ^ | byte | Entier de 0 à 255 | | short | Entier de -32768 à 32767 | | **int** | **Entier de -2147483648 à 2147483647** | | long | Entier de -9223372036854775808 à 9223372036854775807 | | float | Nombre simple précision de -3,402823e38 à 3,402823e38 | | **double** | **Nombre double précision de -1,79769313486232e308 à 1,79769313486232e308** | | decimal | Nombre décimal convenant particulièrement aux calculs financiers | | char | Représente un caractère | | **string** | **Une chaine de caractère** | | **bool** | **Une valeur booléenne (vrai ou faux)** | ===== Conversions entre les types ===== ==== Entre types proches SANS perte: ==== int num = 2147483647; long bigNum = num; ==== Entre types proches AVEC perte: CAST ==== double prix = 125.55; int valeur = (int)prix; // valeur vaut 125 Le casting explicite s’utilise en préfixant une variable par un type précisé entre parenthèses. ==== Entre types incompatibles ==== === Méthode Convert.xxx() === string chaineAge = "20"; int age = Convert.ToInt32(chaineAge); // age vaut 20 === Méthode xxx.TryParse() === string chaineAge = "ab20cd"; int age; if (int.TryParse(chaineAge, out age)) { Console.WriteLine("La conversion est possible, age vaut " + age); } else { Console.WriteLine("Conversion impossible"); } Il est possible de convertir dans différents types avec les méthodes ToBool, ToChar, etc... Les types de base pris en charge sont Boolean (bool), Char (char), SByte (sbyte), Byte (byte), Int16 (short), Int32 (int), Int64 (long), UInt16 (ushort), UInt32 (uint), UInt64 (ulong), Single (float), Double (double), Decimal (decimal), DateTime et String (string).