Maison  >  Article  >  Java  >  Conversion en Java

Conversion en Java

WBOY
WBOYoriginal
2024-08-30 15:12:13834parcourir

La conversion en Java est un phénomène dans lequel la variable peut être déclarée comme un certain type de données et elle est convertie en un type de données différent dans le but qu'une opération/fonction spécifique soit exécutée avec succès. Cette conversion de type de données est applicable aux huit types de données : int, char, long, boolean, float, double, byte et short. Les types de conversion peuvent être classés en conversion implicite et explicite. La méthode de conversion implicite est obtenue soit lorsque les deux types de données sont compatibles, soit lorsque le type de données de destination est supérieur au type de données source. La méthode de conversion explicite des chaînes est obtenue par un certain nombre de méthodes telles que « chaîne en int », « chaîne en long », « chaîne en flottant », « chaîne en booléen », et la conversion de date est obtenue par « chaîne en date » et 'date à la chaîne'.

PUBLICITÉ Cours populaire dans cette catégorie MAÎTRISÉE JAVA - Spécialisation | 78 séries de cours | 15 tests simulés

Types de conversion en Java

En fonction du type de données vers quel type de données, une variable a été convertie, nous pouvons la classer en deux :

1. Conversion implicite

Elle est également connue sous le nom de conversion automatique, car elle ne nécessite aucun code explicite pour le processus de conversion et est aussi simple que d'attribuer une variable avec une autre valeur de type de données. Un exemple très simple serait d’attribuer une valeur entière à une variable longue. Montrons la conversion implicite simple avec un exemple.

Exemple de code :

public class con_java {
public static void main(String[] args) {
int a = 22;
long b = a;
System.out.println("Converted Value is : " + b);
}
}

Dans l'exemple ci-dessus, nous avons simplement fourni une valeur entière à la variable longue, et cela fonctionne à merveille. Int et Long, tous deux étant des types de données numériques, fonctionnent parfaitement l'un avec l'autre.

Interprétation du code : Dans une classe simple avec main, nous avons déclaré une variable entière « a » avec la valeur 22 puis une variable longue « b ». Ici, nous avons attribué une valeur entière de a à b, qui est de type de données long. Avec la ligne d'impression, la valeur du type de données long b est imprimée. Étant une conversion implicite, aucun code supplémentaire n'est requis.

Sortie :

Conversion en Java

Pour la conversion implicite, il existe deux règles de base. Ce n'est que lorsque ces propriétés seront satisfaites que la conversion sera exécutée en douceur.

a. Les deux types de données doivent être compatibles

  • Si, dans le cas où l'un des types de données n'est pas compatible avec l'autre, la conversion n'aura pas lieu. Si le type de données source est de la catégorie Numérique, la destination doit également être de la même catégorie.
  • Les types de données numériques sont tout à fait compatibles les uns avec les autres et sont faciles à convertir. Mais ces mêmes types de données numériques ne peuvent pas être facilement convertis en type char ou booléen.
  • Byte, Short, Int, Long, Float et Double sont les types de données numériques.

b. Le type de données de destination doit être plus grand que le type de données source

  • Cela signifie simplement que le type de données vers lequel nous essayons de convertir doit être d'une taille en bits plus grande.
  • Par exemple, nous avons attribué une valeur int à une variable longue. Ici, la taille en bits de int est de 32 bits ; au contraire, la taille des bits pour long est de 64 bits. Cela signifie que la longueur de 64 bits a une valeur supérieure à celle d'un entier de 32 bits.

Avec la satisfaction des règles mentionnées ci-dessus, une simple conversion implicite se produit. Maintenant, comprenons la conversion explicite.

La deuxième exigence pour la conversion implicite est que le type de données à bits inférieurs ne peut être converti qu'en type de données à bits plus grands, ce qui n'entraîne aucune perte de données lors de la conversion. Mais que se passe-t-il si nous devons convertir des types de données de plus grande taille en bits plus petits ? Ici, la perte de données est inévitable, et le compilateur Java générera une erreur « UserWarni : perte de précision possible lors de la conversion » ou une autre erreur en fonction du code. La conversion explicite est ce que nous utilisons lorsque nous sommes conscients des propriétés de conversion et de l'erreur qu'elle génère.

2. Conversion explicite

Implémenter la conversion explicite consiste à remplacer la conversion de type par défaut de Java en définissant explicitement notre type de données provisoire personnalisé selon les exigences. Lorsque nous fournissons explicitement une conversion de type, le type de données de la valeur est remplacé par le type de données souhaité à court terme. La conversion explicite est également connue sous le nom de restriction d'un type. La syntaxe de la conversion de type est :

Vaiable2 = (type) Variable1;

Ici, variable2 est la variable de destination des différents types de données vers lesquelles la Variable1 doit être convertie. (type) est la spécification du type de données dans lequel Variable1 est convertie et attribuée à Variable2.

Explicit Conversion can be of immense use, where a small part of the number is kept on hold while the calculation is executed. Application for explicit conversion can be a simple calculator, where the percentage of the student has to be calculated. To demonstrate the working of Explicit Conversion, let’s try an example.

Sample Code:

public class exp_con_java {
public static void main(String[] args) {
double dou_Variable = 120.14;
long long_Variable = (long) dou_Variable;
int intVariable = (int)long_Variable;
System.out.println("The Double value is "+dou_Variable);
System.out.println("The Long value is "+long_Variable);
System.out.println("The Integer value is "+intVariable);
}
}

Output:

Conversion en Java

Below is the list of Possible Conversions in Java:

  • String to int (using Integer.parseInt() which returns primitive int)
  • String to long (using Long.parseLong() which returns primitive long)
  • String to float (using Float.parseFloat(), it returns primitive float)
  • String to Boolean (using Boolean.parseBoolean(), it returns primitive boolean, either TRUE or FALSE)

SimpleDateFormat(): is a Java class that helps in formatting and parsing of the data. It simply allows us to convert a simple String into a Date object.

  • String to Date (using parse(), it converts a value of String into Date object)
  • Date to String (using format(), simply converts a Date into String)

The above listed are the possible conversion types and the methods required, and the output it returns.

Conclusion

Type conversion in Java or any other language is a better way of utilizing its functions and getting the desired output. We have understood two types of conversion based on properties and data types. Implicit conversion does not need any extra effort but must follow two properties. And Explicit conversion must be explicitly defined in order to override Java’s default conversion. We have understood both types with program examples.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Booléens JavaArticle suivant:Booléens Java