Qu'est-ce que la conversion de type en Java ? [Avec exemples]

Publié: 2021-12-23

Si vous débutez votre parcours de programmation Java, l'un des principaux concepts à maîtriser est la conversion de type ou la conversion de type. Que vous cherchiez à maîtriser la programmation Java ou que vous vouliez débuter une carrière dans le développement logiciel, les notions de typage vous seront toujours utiles.

La conversion de type est simplement le processus de conversion de données d'un type de données en un autre. Ce processus est connu sous le nom de conversion de type, de conversion de type ou même de coercition de type. Le langage de programmation Java permet aux programmeurs de convertir à la fois les types de données primitifs et de référence. En effectuant une conversion de type, la valeur des données reste la même, juste que son type a changé. Une chose à noter est qu'il n'est pas possible d'effectuer un transtypage ou une conversion de type sur des variables de type de données booléennes.

Java propose différents types de conversions de types pour les programmeurs. Regardons quelques-unes des conversions de types les plus utiles !

Apprenez des cours de développement de logiciels dans les meilleures universités du monde. Gagnez des programmes Executive PG, des programmes de certificat avancés ou des programmes de maîtrise pour accélérer votre carrière.

Table des matières

Conversion de type primitif en Java

Les types de données primitifs sont simplement les types de données définis par le langage de programmation que les développeurs doivent utiliser. Java propose sept types de données primitifs différents tels que :

  • booléen
  • Octet
  • Carboniser
  • Court
  • Int
  • Long
  • Flotter
  • Double

Par défaut, chaque fois que vous affectez des valeurs à une variable dans la programmation Java, vous effectuez une conversion de type primitif puisque vous affectez la valeur d'un type à un autre type.

Conversion de type implicite en Java

Outre le casting de type primitif effectué par défaut, il existe deux autres conversions de type en Java - implicite et explicite.

La conversion de type implicite, également appelée conversion étendue, consiste à convertir un type de données avec des valeurs inférieures en un type de données avec des valeurs plus élevées sans entraîner de perte de données. Voici un exemple de conversion de type implicite en Java :

classe publique Conv{

public static void main(String[] args)

{

entier je = 1500 ;

//conversion automatique des types

long l = je ;

//conversion automatique des types

flotteur f = l ;

System.out.println("Int"+i);

System.out.println("Long"+l);

System.out.println("Flottant"+f);

}

}

Sortir:

Valeur entière 15000

Valeur longue 15000

Valeur flottante 15000.0

Dans les trois instructions ci-dessus, une conversion de type implicite se produit et la valeur d'un type de données "long" est convertie en int et float.

La conversion de type implicite en Java a lieu lorsque ces deux conditions sont principalement remplies :

  • Les deux types de données doivent être compatibles entre eux. Par exemple, les types de données numériques sont compatibles avec d'autres types de données numériques, mais pas avec les types chaîne ou booléen. De même, le type de données chaîne n'est pas compatible avec un type de données booléen.
  • La valeur ciblée qui doit être convertie en type doit avoir une longueur plus petite. Par exemple, 4 octets de données peuvent être convertis en un type de données de 8 octets.

L'ordre des types de données dans lequel la conversion de type implicite en Java se produit est le suivant :

Octet > Court > Char > Int > Long > Flottant > Double

Conversion de type explicite en Java

La conversion de type explicite est l'opposé de la conversion de type implicite. Ainsi, au lieu de s'élargir, cette conversion de type tend vers un rétrécissement. Le développeur attribue la valeur d'un type de données supérieur à un type relativement inférieur. Étant donné que nous transtypons des données d'un type de données plus large vers un type de données plus étroit, il existe des risques de perte de données. Des exécutions minutieuses doivent donc être effectuées lors de la conversion de type explicite en Java.

Alors que la conversion de type implicite en Java peut être effectuée automatiquement par le compilateur, le développeur effectue une conversion de type explicite. Voici un exemple de transtypage de type explicite en Java :

classe publique étroite

{

public static void main(String[] args)

{

double d = 1500,06 ;

// conversion de type explicite

long l = (long)d ;

// conversion de type explicite

int je = (int)l ;

System.out.println("Valeur double "+d);

// partie fractionnaire perdue

System.out.println("Valeur longue "+l);

// partie fractionnaire perdue

System.out.println("Valeur entière "+i);

}

}

Sortir:

Valeur de type de données double 1500.06

Valeur de type de données longue 1500

Int Type de données valeur 1500

La conversion de type explicite en Java fonctionne dans l'ordre de conversion suivant :

Double > Float > Long > Int > Char > Short > Octet

En conclusion

C'est à peu près toutes les bases que vous devez connaître en matière de conversion de type en Java. A partir de là, plus vous pratiquerez, mieux vous comprendrez ces concepts. Gardez à l'esprit que les structures de données (et même les algorithmes) sont l'un des aspects les plus essentiels de l'informatique et qu'elles sont donc tout aussi vitales pour le développement de logiciels. Quelle que soit la pile technologique sur laquelle vous travaillez, vous travaillerez avec des données et des structures de données. Si vous travaillez sur un projet complexe, vous aurez très probablement affaire à plusieurs types de données et structures de données pour arriver à destination. Dans tous ces cas, et en général aussi, les concepts de conversion de type vous aideront à rester à flot sans aucune difficulté.

Donc, vous devriez commencer à vous entraîner et à jouer avec différents types de données, essayer d'implémenter des conversions de type explicites en Java, rencontrer des erreurs et vous en sortir ! C'est le seul moyen de maîtriser un langage de programmation. Chez upGrad, nous croyons en la valeur de la pratique et de l'accompagnement personnel, ce qui se reflète dans nos cours et notre pédagogie d'enseignement. Si vous êtes un développeur de logiciels en herbe qui cherche à travailler dans le développement full-stack, notre programme Executive PG en développement de logiciels - Spécialisation en développement Full Stack est conçu juste pour vous. Il est conçu pour aider les apprenants à repartir de zéro, à comprendre les concepts les plus complexes et à les maîtriser. Consultez notre programme et inscrivez-vous bientôt!

La conversion de type en Java doit-elle toujours être effectuée par le programmeur ?

La conversion de type explicite doit être effectuée par le programmeur. Cependant, la conversion de type implicite est effectuée par le compilateur lui-même.

Quand la conversion de type est-elle requise en Java ?

Les programmeurs et les développeurs de logiciels doivent vérifier régulièrement la compatibilité des différents types de données avec lesquels ils travaillent. Dans tous ces scénarios, la conversion de type aide les programmeurs à façonner les types de données selon les exigences de leur programme.

Quelle conversion de type est automatiquement effectuée en Java ?

La conversion de type implicite en Java est automatiquement effectuée.