Casting de type Java

Avant d’en savoir plus surCasting de type Java, assurez-vous de connaître les types de données Java.


Type de moulage

Le processus de conversion de la valeur d’un type de données ( int ,  float ,  double , etc.) vers un autre type de données est appelé transtypage.

En Java, il existe 13 types de conversion de type. Cependant, dans ce tutoriel, nous nous concentrerons uniquement sur les 2 principaux types.

1. Élargissement du type de moulage

2. Coulée de type étroit

Pour en savoir plus sur les autres types de conversion de type, visitez Java Type Conversion (documentation Java officielle).


Élargissement de type coulée

DansÉlargissement de type coulée, Java convertit automatiquement un type de données en un autre type de données.

Exemple: conversion d’un entier en double

 class Main {
  public static void main(String[] args) {
    // create int type variable
    int num = 10;
    System.out.println("The integer value: " + num);

    // convert into double type
    double data = num;
    System.out.println("The double value: " + data);
  }
}
 

Production

La valeur entière: 10
La valeur double: 10,0

Dans l’exemple ci-dessus, nous attribuons le int variable de type nomméenumà un double variable de type nomméeLes données.

Ici, le Java convertit d’abord le int saisissez des données dans double type. Et puis attribuez-le au double variable.

Dans le cas deÉlargissement de type coulée, le type de données inférieur (ayant une taille plus petite) est converti en type de données supérieur (ayant une taille plus grande). Il n’y a donc aucune perte de données. C’est pourquoi ce type de conversion se produit automatiquement.

Remarque: Ceci est également connu commeCasting de type implicite.


Coulée de type étroit

DansCoulée de type étroit, nous convertissons manuellement un type de données en un autre en utilisant la parenthèse.

Exemple: conversion d’un double en un entier

 class Main {
  public static void main(String[] args) {
    // create double type variable
    double num = 10.99;
    System.out.println("The double value: " + num);

    // convert into int type
    int data = (int)num;
    System.out.println("The integer value: " + data);
  }
}
 

Production

La valeur double: 10,99
La valeur entière: 10

Dans l’exemple ci-dessus, nous attribuons le double variable de type nomméenumà un int variable de type nomméeLes données.

Remarquez la ligne,

 int data = (int)num;
 

Ici le int le mot-clé entre parenthèses indique que lenumvariable est convertie en int type.

Dans le cas deCoulée de type étroit, les types de données supérieurs (ayant une taille plus grande) sont convertis en types de données inférieurs (ayant une taille plus petite). D’où la perte de données. C’est pourquoi ce type de conversion ne se fait pas automatiquement.

Remarque: Ceci est également connu commeCasting de type explicite.


Voyons quelques exemples d’autres conversions de type en Java.

Exemple 1: conversion de type de int en chaîne

 class Main {
  public static void main(String[] args) {
    // create int type variable
    int num = 10;
    System.out.println("The integer value is: " + num);

    // converts int to string type
    String data = String.valueOf(num);
    System.out.println("The string value is: " + data);
  }
}
 

Production

La valeur entière est: 10
La valeur de la chaîne est: 10

Dans le programme ci-dessus, notez la ligne

 String data = String.valueOf(num);
 

Ici, nous avons utilisé le valueOf() méthode de la classe Java String pour convertir la variable de type int en une chaîne.


Exemple 2: conversion de type de String en int

 class Main {
  public static void main(String[] args) {
    // create string type variable
    String data = "10";
    System.out.println("The string value is: " + data);

    // convert string variable to int
    int num = Integer.parseInt(data);
    System.out.println("The integer value is: " + num);
  }
}
 

Production

La valeur de la chaîne est: 10
La valeur entière est: 10

Dans l’exemple ci-dessus, notez la ligne

 int num = Integer.parseInt(data);
 

Ici, nous avons utilisé le parseInt() méthode du Java Integer classe pour convertir une variable de type chaîne en un int variable.

Remarque: Si la variable chaîne ne peut pas être convertie en variable entière, une exception nommée NumberFormatException