how convert char int java
Dans ce didacticiel, nous allons apprendre les différentes façons de convertir les valeurs du type de données primitif char en int en Java, ainsi que des FAQ et des exemples:
Nous couvrirons l'utilisation des méthodes suivantes fournies par différentes classes Java pour la conversion de caractère en int:
- Conversion de type implicite (obtention de valeurs ASCII)
- getNumericValue ()
- parseInt () avec String.valueOf ()
- Soustraire «0»
=> Vérifiez ici pour voir de A à Z des didacticiels de formation Java
Ce que vous apprendrez:
- Convertir Char en int en Java
- # 1) Utilisation de la conversion de type implicite, c'est-à-dire obtenir la valeur ASCII du caractère
- # 2) Utilisation de la méthode Character.getNumericValue ()
- # 3) Utilisation de la méthode Integer.parseInt () et String.ValueOf ()
- # 4) Convertir Char en int en Java en soustrayant «0»
- FAQ concernant Char To Int Java
- Conclusion
Convertir Char en int en Java
Java a des types de données primitifs comme int, char, long, float, etc. Dans certains scénarios, il est nécessaire d'effectuer des opérations sur des valeurs numériques, où les valeurs de variable sont spécifiées dans le type de données char.
Dans de tels cas, nous devons d'abord convertir ces valeurs de caractères en valeurs numériques, c'est-à-dire des valeurs int, puis effectuer les actions souhaitées, les calculs sur celles-ci.
Par exemple, dans certains systèmes logiciels, certaines opérations doivent être effectuées, ou certaines décisions doivent être prises en fonction des évaluations des clients reçues dans le formulaire de commentaires des clients qui correspond au type de données de caractère.
Dans de tels cas, ces valeurs doivent d'abord être converties en type de données int pour effectuer des opérations numériques sur ces valeurs. Java fournit diverses méthodes pour convertir un caractère en valeur int. Examinons ces méthodes en détail.
# 1) Utilisation de la conversion de type implicite, c'est-à-dire obtenir la valeur ASCII du caractère
En Java, si vous affectez une valeur de type de données plus petite à une variable de la variable de type de données plus grande compatible, la valeur est automatiquement promue, c'est-à-dire qu'elle est implicitement convertie en une variable du type de données plus grand.
Par exemple, si nous affectons une variable de type int à une variable de type long, alors la valeur int est automatiquement convertie en type de données long.
La conversion de type implicite se produit également pour la variable de type de données «char», c'est-à-dire que lorsque nous affectons la valeur de la variable char suivante au type de données variable «int», la valeur de la variable char est automatiquement convertie en un int par le compilateur.
Par exemple,
char a = «1»;
int b = a;
Ici, le caractère «a» est implicitement converti en type de données int.
Si nous imprimons la valeur de «b», vous verrez alors la console imprime «49». En effet, lorsque nous affectons la valeur de la variable char «a» à la variable int «b», nous récupérons en fait la valeur ASCII de «1» qui est «49».
Dans l'exemple de programme Java suivant, voyons comment convertir un caractère en int via une conversion de type implicite, c'est-à-dire obtenir la valeur ASCII de la variable char.
package com.softwaretestinghelp; /** * This class demonstrates sample code to convert char to int Java program * using Implicit type casting i.e. ASCII values * * @author * */ public class CharIntDemo1 { public static void main(String() args) { // Assign character 'P' to char variable char1 char char1 = 'P'; // Assign character 'p' to char variable char2 char char2 = 'p'; // Assign character '2' to char variable char3 char char3 = '2'; // Assign character '@' to char variable char4 char char4 = '@'; // Assign character char1 to int variable int1 int int1 = char1; // Assign character char2 to int variable int2 int int2 = char2; // Assign character char3 to int variable int3 int int3 = char3; // Assign character char2 to int variable int4 int int4 = char4; //print ASCII int value of char System.out.println('ASCII value of '+char1+' -->'+int1); System.out.println('ASCII value of '+char2+' -->'+int2); System.out.println('ASCII value of '+char3+' -->'+int3); System.out.println('ASCII value of '+char4+' -->'+int4); } }
Voici la sortie du programme:
Valeur ASCII de P -> 80
Valeur ASCII de p -> 112
Valeur ASCII de 2 -> 50
Valeur ASCII de @ -> 64
Dans le programme ci-dessus, nous pouvons voir les valeurs ASCII de différentes valeurs de variables char comme suit:
Valeur ASCII de P -> 80
Valeur ASCII de p -> 112
La différence entre les valeurs de «P» et «p» est due au fait que les valeurs ASCII sont différentes pour les lettres majuscules et minuscules.
De même, nous obtenons des valeurs ASCII pour les valeurs numériques et les caractères spéciaux ainsi que les suivantes:
Valeur ASCII de 2 -> 50
Valeur ASCII de @ -> 64
# 2) Utilisation de la méthode Character.getNumericValue ()
La classe Character a des méthodes de surcharge statique de getNumericValue (). Cette méthode renvoie une valeur de type de données int représentée par un caractère Unicode spécifié.
Voici la signature de méthode de la méthode getNumericValue () pour le type de données char:
public static int getNumericValue (char ch)
Cette méthode statique reçoit un argument de type de données char et renvoie la valeur du type de données int que l’argument «ch» représente.
Par exemple, le caractère « u216C» renvoie un entier d’une valeur de 50.
Paramètres:
ch: C'est un caractère qui doit être converti en int.
Retour:
Cette méthode renvoie la valeur numérique de «ch», sous forme de valeur non négative du type de données int. Cette méthode renvoie -2 si «ch» a une valeur numérique qui n’est pas un entier non négatif. Renvoie -1 si «ch» n’a pas de valeur numérique.
Comprenons l'utilisation de cette méthode Character.getNumericValue () pour convertir un caractère en valeur int.
Prenons le scénario dans lequel l'un des systèmes logiciels de la banque, où le sexe est spécifié dans le type de données «char» et basé sur le code de genre, une décision doit être prise comme l'attribution du taux d'intérêt.
Pour cela, le code de genre doit être converti du type de données char en type de données int. Cette conversion est effectuée à l'aide de la méthode Character.getNumericValue () dans l'exemple de programme ci-dessous.
package com.softwaretestinghelp; /** * This class demonstrates sample code to convert char to int Java program * using Character.getNumericValue() * * @author * */ public class CharIntDemo2 { public static void main(String() args) { // Assign character '1' to char variable char1 char gender = '1'; //Send gender as an argument to getNumericValue() method // to parse it to int value int genderCode = Character.getNumericValue(gender); // Expected to print int value 1 System.out.println('genderCode--->'+genderCode); double interestRate = 6.50; double specialInterestRate = 7; switch (genderCode) { case 0 ://genderCode 0 is for Gender Male System.out.println('Welcome ,our bank is offering attractive interest rate on Fixed deposits :'+ interestRate +'%'); break; case 1 ://genderCode 1 is for Gender Female System.out.println(' Welcome, our bank is offering special interest rate on Fixed deposits '+ 'for our women customers:'+specialInterestRate+'% .'+'
'+' Hurry up, this offer is valid for limited period only.'); break; default : System.out.println('Please enter valid gender code '); } } }
Voici la sortie du programme:
genderCode -> 1
Bienvenue, notre banque propose un taux d'intérêt spécial sur les dépôts fixes pour nos clientes: 7,0%.
Dépêchez-vous, cette offre n'est valable que pour une période limitée.
Ainsi, dans le programme ci-dessus, nous convertissons la valeur de genre de la variable char en valeur int pour obtenir la valeur int dans la variable genderCode.
carboniser sexe = «1»;
int genderCode = Caractère. getNumericValue (le genre);
Ainsi, lorsque nous imprimons sur console, System. en dehors .println ('genderCode ->' + genderCode); alors nous voyons la valeur int sur la console comme ci-dessous:
genderCode -> 1
La même valeur de variable est transmise à la boucle de cas de commutation changer (genderCode) pour une prise de décision ultérieure.
# 3) Utilisation de la méthode Integer.parseInt () et String.ValueOf ()
Cette méthode statique parseInt () est fournie par la classe Integer de la classe wrapper.
Voici la signature de méthode de Integer.parseInt () :
public static int parseInt (String str) lève NumberFormatException
Cette méthode analyse l'argument String, elle considère String comme un entier décimal signé. Tous les caractères de l'argument String doivent être des chiffres décimaux. La seule exception est que le premier caractère est autorisé à être un signe moins ASCII «-» et un signe plus «+» pour une indication d'une valeur négative et positive respectivement.
Ici, le paramètre «str» est une chaîne ayant la représentation int à analyser et renvoie la valeur entière représentée par l'argument en décimal. Lorsque la chaîne ne contient pas d'entier analysable, la méthode lève une exception NumberFormatException
Comme vu dans la signature de méthode pour parseInt ( Chaîne str), l'argument à passer à la méthode parseInt () est de type de données String. Donc, il est nécessaire de convertir d'abord une valeur char en String, puis de transmettre cette valeur String à la méthode parseInt (). Pour cela, la méthode String.valueOf () est utilisée.
valueOf () est une méthode de surcharge statique de la classe String qui est utilisée pour convertir les arguments de types de données primitifs comme int, float en type de données String.
public static String valueOf (int i)
Cette méthode statique reçoit un argument de type de données int et retourne la représentation sous forme de chaîne de l'argument int.
Paramètres:
i: C'est un entier.
Retour:
Représentation sous forme de chaîne de l'argument int.
Donc, nous utilisons une combinaison de méthode Integer.parseInt () et String.valueOf (). Voyons l’utilisation de ces méthodes dans l’exemple de programme suivant. Cet exemple de programme (1) convertit d'abord la valeur de notation client du type de données caractère en entier et (2) imprime ensuite le message approprié sur la console à l'aide de l'instruction if-else.
package com.softwaretestinghelp; /** * This class demonstrates sample code to convert char to int Java program * using Integer.parseInt() and String.valueOf() methods * * @author * */ public class CharIntDemo3 { public static void main(String() args) { // Assign character '7' to char variable customerRatingsCode char customerRatingsCode = '7'; //Send customerRatingsCode as an argument to String.valueOf method //to parse it to String value String customerRatingsStr = String.valueOf(customerRatingsCode); System.out.println('customerRatings String value --->'+customerRatingsStr); // Expected to print String value 7 //Send customerRatingsStr as an argument to Integer.parseInt method //to parse it to int value int customerRatings = Integer.parseInt(customerRatingsStr); System.out.println('customerRatings int value --->'+customerRatings); // Expected to print int value 7 if (customerRatings>=7) { System.out.println('Congratulations! Our customer is very happy with our services.'); }else if (customerRatings>=5) { System.out.println('Good , Our customer is satisfied with our services.'); }else if(customerRatings>=0) { System.out.println('Well, you really need to work hard to make our customers happy with our services.'); }else { System.out.println('Please enter valid ratings value.'); } } }
Voici la sortie du programme:
customerRatings Valeur de chaîne -> 7
customerRatings valeur int -> 7
Toutes nos félicitations! Notre client est très satisfait de nos services.
Dans l'exemple de code ci-dessus, nous avons utilisé la méthode String.valueOf () pour convertir un caractère en une valeur de type de données String.
char customerRatingsCode = '7'; String customerRatingsStr = String.valueOf(customerRatingsCode);
Maintenant, cette valeur String est convertie en type de données int à l'aide de la méthode Integer.parseInt () en passant customerRatingsStr comme argument.
int customerRatings = Integer.parseInt(customerRatingsStr); System.out.println('customerRatings int value --->'+customerRatings); // Expected to print int value 7
Cette valeur int Évaluation du client est utilisé plus loin dans l'instruction if-else pour comparer et imprimer le message requis sur la console.
# 4) Convertir Char en int en Java en soustrayant «0»
Nous avons vu la conversion de caractère en int en utilisant un transtypage implicite. Cela renvoie la valeur ASCII du caractère. Par exemple. La valeur ASCII de «P» renvoie 80 et la valeur ASCII de «2» renvoie 50.
Cependant, pour récupérer la valeur int pour «2» comme 2, la valeur ASCII du caractère «0» doit être soustraite du caractère. Par exemple. Pour récupérer l'int 2 du caractère «2»,
int intValue = '2'- '0'; System.out.println('intValue?”+intValue); This will print intValue->2.
Noter :Ceci est utile pour obtenir des valeurs int pour les caractères de valeur numérique uniquement, c'est-à-dire 1, 2, etc., et pas utile avec des valeurs de texte comme 'a', 'B' etc. car il retournera simplement la différence entre les valeurs ASCII de '0 'et ce personnage.
java copie le tableau 2d dans un autre tableau
Jetons un œil à l'exemple de programme pour utiliser cette méthode pour soustraire la valeur ASCII de zéro, c'est-à-dire «0», de la valeur ASCII du caractère.
package com.softwaretestinghelp; /** * This class demonstrates sample code to convert char to int Java program * using ASCII values by subtracting ASCII value of '0'from ASCII value of char * * @author * */ public class CharIntDemo4 { public static void main(String() args) { // Assign character '0' to char variable char1 char char1 = '0'; // Assign character '1' to char variable char2 char char2 = '1'; // Assign character '7' to char variable char3 char char3 = '7'; // Assign character 'a' to char variable char4 char char4 = 'a'; //Get ASCII value of '0' int int0 = char1; System.out.println('ASCII value of 0 --->'+int0); int0 = char2; System.out.println('ASCII value of 1 --->'+int0); // Get int value by finding the difference of the ASCII value of char1 and ASCII value of 0. int int1 = char1 - '0'; // Get int value by finding the difference of the ASCII value of char2 and ASCII value of 0. int int2 = char2 - '0'; // Get int value by finding the difference of the ASCII value of char3 and ASCII value of 0. int int3 = char3 - '0'; // Get int value by finding the difference of the ASCII value of char4 and ASCII value of 0. int int4 = char4 - '0'; //print ASCII int value of char System.out.println('Integer value of '+char1+' -->'+int1); System.out.println('Integer value of '+char2+' -->'+int2); System.out.println('Integer value of '+char3+' -->'+int3); System.out.println('Integer value of '+char4+' -->'+int4); } }
Voici la sortie du programme:
Valeur ASCII de 0 -> 48
Valeur ASCII de 1 -> 49
Valeur entière de 0 -> 0
Valeur entière de 1 -> 1
Valeur entière de 7 -> 7
Valeur entière de a -> 49
Dans le programme ci-dessus, si nous affectons les caractères «0» et «1» à la valeur du type de données int, nous obtiendrons les valeurs ASCII de ces caractères en raison de la conversion implicite. Ainsi, lorsque nous imprimons ces valeurs comme indiqué dans les instructions ci-dessous:
int int0 = char1; System.out.println('ASCII value of 0 --->'+int0); int0 = char2; System.out.println('ASCII value of 1 --->'+int0);
Nous obtiendrons la sortie comme:
Valeur ASCII de 0 -> 48
Valeur ASCII de 1 -> 49
Ainsi, pour obtenir une valeur entière représentant la même valeur que celle de char, nous soustrayons la valeur ASCII de «0» des caractères représentant des valeurs numériques.
int int2 = char2 - '0'; .
Ici, nous soustrayons les valeurs ASCII de «0» de la valeur ASCII «1».
c'est-à-dire 49-48 = 1. Par conséquent, lorsque nous imprimons sur la console char2
System.out.println («Valeur entière de« + char2 + »->» + int2);
Nous obtenons la sortie comme:
Valeur entière de 1 -> 1
Avec cela, nous avons couvert les différentes façons de convertir un caractère Java en une valeur entière à l'aide d'exemples de programmes. Ainsi, pour convertir un caractère en int en Java, l'une des méthodes décrites dans les exemples de codes ci-dessus peut être utilisée dans votre programme Java.
Examinons maintenant certaines des questions fréquemment posées sur la conversion du caractère Java en int.
FAQ concernant Char To Int Java
Q # 1) Comment puis-je convertir un caractère en un entier?
Répondre:
En Java, char peut être converti en valeur int à l'aide des méthodes suivantes:
- Conversion de type implicite (obtention de valeurs ASCII)
- Character.getNumericValue ()
- Integer.parseInt () avec String.valueOf ()
- Soustraire «0»
Q # 2) Qu'est-ce qu'un caractère en Java?
Répondre: Le type de données char est un type de données Java primitif ayant un seul caractère Unicode 16 bits. La valeur est attribuée sous la forme d’un caractère unique entouré d’un guillemet simple «». Par exemple, char a = 'A' ou char a = '1' etc.
Q # 3) Comment initialisez-vous un caractère en Java?
Répondre: La variable char est initialisée en attribuant un seul caractère entre guillemets simples, c'est-à-dire «» Par exemple, char x = 'b', char x = '@', char x = '3' etc.
Q # 4) Quelle est la valeur int de char A?
Répondre: Si char «A» est assigné à la variable int, alors char sera implicitement promu en int et si la valeur est affichée, il renverra la valeur ASCII du caractère «A» qui est 65.
Par exemple,
int x= 'A'; System.out.println(x);
Donc, cela imprimera 65 sur la console.
Conclusion
Dans ce didacticiel, nous avons vu les façons suivantes de convertir des valeurs de type de données Java char en int.
- Conversion de type implicite (obtention de valeurs ASCII)
- Character.getNumericValue ()
- Integer.parseInt () avec String.valueOf ()
- Soustraire «0»
Nous avons couvert chacune de ces méthodes en détail et démontré l'utilisation de chaque méthode à l'aide d'un exemple de programme Java.
=> Consultez TOUS les didacticiels Java ici
lecture recommandée
- Classe Java Integer et Java BigInteger avec exemples
- Tutoriel JAVA pour les débutants: plus de 100 tutoriels vidéo Java pratiques
- TreeMap en Java - Tutoriel avec des exemples de TreeMap Java
- Comment convertir une chaîne Java en Int - Tutoriel avec des exemples
- Tutoriel Java Float avec des exemples de programmation
- Instruction Java Break - Tutoriel avec des exemples
- Java Enum: Tutoriel sur l'énumération Java avec des exemples
- Méthode Java String length () avec exemples