Convertir Octet en Int en Java
- Convertir Byte en Int à l’aide de la classe d’enveloppe d’octet et de la conversion en Java
- Utilisation de la conversion d’octet en octet non signé
Un type de données octet est défini comme un entier de complément à deux signé de 8 bits, alors qu’un type de données int peut être classé comme un entier de complément à deux signé de 32 bits. À moins qu’il n’y ait un problème de mémoire, un entier est le type de données par défaut utilisé pour stocker les valeurs intégrales. Dans cet article, nous allons discuter de la façon dont vous pouvez convertir un octet en un type de données int.
Convertir Byte en Int à l’aide de la classe d’enveloppe d’octet et de la conversion en Java
Un octet contient 0 comme valeur par défaut et sa plage varie de -128 = (-2^7) à 127 = (2^7 -1) . Un entier contient une valeur par défaut de 0 et sa plage varie de -2^31 à 2^31-1. La classe Wrapper pour byte est Byte, alors que pour int est Integer.
Si la valeur d’octet dépasse leur plage, le compilateur la promeut automatiquement en variable int. En Java, il n’y a qu’un type entier signé (pas de concept non signé) ; cela signifie que tous les types primitifs entiers, y compris l’octet, sont signés. Cependant, la plage est comprise entre 0 et 255 pour un type de données d’octet non signé.
L’intérêt de la conversion octet en entier est de préserver le signe de la valeur. Ici, dans le code, nous avons une variable de type octet b
, que nous allons convertir en une variable de type int i
. Par conséquent, il n’est pas abattu. Nous pouvons affecter directement l’octet au type de données int.
Deuxièmement, nous avons une méthode de classe Wrapper intValue()
qui renvoie la valeur de byte sous forme d’entier après avoir élargi la conversion primitive car nous stockons un type de données plus petit dans un plus grand.
Si nous prenons l’octet comme non signé, nous avons la méthode Byte.toUnsignedInt()
qui convertit l’argument passé en un int en utilisant la conversion non signée.
public class JavaByteToInt {
public static void main(String args[]) {
byte b = -98;
System.out.println("byte b : = " + b);
int i = b;
System.out.println("int i : " + i);
Byte byt = new Byte(b);
int i1 = byt.intValue();
int i2 = Byte.toUnsignedInt(byt);
System.out.println("int i1 : " + i1);
System.out.println("int i2 : " + i2);
}
}
Production
byte b : = -98 int i : -98 int i1 : -98 int i2 : 158
Utilisation de la conversion d’octet en octet non signé
La plage pour un type de données d’octet non signé va de 0 à 255 ; cependant, Java n’a pas d’octets non signés. Ce que vous pouvez faire est de convertir l’octet en un int pour créer un octet non signé et de masquer (au niveau du bit) le nouvel int avec un 0xff
pour obtenir les 8 derniers bits ou empêcher l’extension du signe.
Lorsqu’une valeur d’octet est utilisée avec l’opérateur &
, il convertit automatiquement l’octet en un entier. La valeur hexadécimale de 0x000000FF
est désignée par 0xFF
.
public class JavaByteToInt {
public static void main(String args[]) {
byte b = -127;
int i = (b & 0xFF);
System.out.println(i);
}
}
Production
129
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedInArticle connexe - Java Byte
- Comment convertir une chaîne Java en octet
- Convertir un entier en octet en Java
- Écrire un octet dans un fichier en Java