Maison > Java > javaDidacticiel > Pourquoi la conversion d'un Int en Char en Java renvoie-t-elle une sortie vide ?

Pourquoi la conversion d'un Int en Char en Java renvoie-t-elle une sortie vide ?

Linda Hamilton
Libérer: 2024-11-10 13:18:03
original
695 Les gens l'ont consulté

Why Does Converting an Int to a Char in Java Return an Empty Output?

Explorer les conversions de caractères : Int en Char en Java

Lors de la manipulation de données en Java, des scénarios surviennent souvent dans lesquels les conversions entre types de données primitifs deviennent nécessaire. Un de ces scénarios consiste à convertir un entier (int) en caractère (char). Bien que ces conversions puissent sembler simples, elles peuvent conduire à des résultats inattendus si elles ne sont pas abordées méticuleusement.

Considérez l'extrait de code Java suivant :

int a = 1;
char b = (char) a;
System.out.println(b);
Copier après la connexion

Si vous exécutez ce code, vous pourriez être surpris. pour trouver une sortie vide au lieu du caractère attendu « 1 ». Pour comprendre pourquoi cela se produit, il est crucial de se plonger dans le fonctionnement interne de cette conversion.

Lors de la conversion d'un int en char, Java traite l'int comme un point de code Unicode. Dans l'exemple ci-dessus, l'int 1 a le point de code Unicode 1, qui correspond au caractère de contrôle « début de titre ». Ce caractère n'est pas imprimable et produit donc une sortie vide.

Pour résoudre ce problème et obtenir le caractère attendu « 1 », vous devez traiter l'int comme une valeur numérique plutôt que comme un point de code. Voici comment y parvenir :

int a = '1';
char b = (char) a;
System.out.println(b);
Copier après la connexion

Dans cet extrait, en plaçant le « 1 » entre guillemets simples, vous le spécifiez comme un caractère. La valeur de ce caractère est 49, le point de code Unicode pour « 1 ». La conversion correcte de ce caractère en char produit le résultat souhaité.

De plus, vous pouvez également utiliser les méthodes suivantes pour convertir un int en char :

  • Integer.valueOf(int) .charValue() : renvoie la représentation char de l'int.
  • Character.forDigit(int, int radix) : convertit un int à un caractère représentant le chiffre correspondant à la base spécifiée (par exemple, 10 pour décimal).
  • Character.toChars(int codePoint) : renvoie un tableau de caractères représentant le point de code Unicode de l'int.

En comprenant ces techniques, vous pouvez convertir efficacement entre int et char en Java, garantissant des conversions précises et évitant des résultats inattendus.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal