Konvertieren Int in Byte in Java
- Int-Byte-Konvertierung in Java
- Int-in-Byte-Konvertierung und umgekehrt in Java
- Vorzeichenlose Umwandlung von Int in Byte in Java
- Int-to-Byte-Konvertierung und umgekehrt mit Java 8
-
Int zu Byte mit der Methode
byteValue()
in Java
In diesem Tutorial wird beschrieben, wie man int in das Byte in Java umwandelt.
In Java sind int und byte beide primitive Typen und werden zum Speichern numerischer Werte verwendet. Beide werden verwendet, um vorzeichenbehaftete und vorzeichenlose Werte zu speichern, haben jedoch unterschiedliche Speicherbereiche. Der Byte-Bereich ist -128 bis 127
und der int-Bereich ist -2.147.483.648 bis 2.147.483.647
. Wir können also deutlich sehen, dass int einen größeren Wert als den Byte-Typ speichern kann.
Beim Konvertieren von int in Byte gehen einige Daten aufgrund des Speichers verloren. Sehen wir uns einige Beispiele an.
Int-Byte-Konvertierung in Java
In diesem Beispiel konvertieren wir int durch Casting in byte und sehen, ob der int-Wert außerhalb des byte-Bereichs liegt. Wenn dies der Fall ist, wird es in einen negativen Wert umgewandelt. Das heißt, wenn ein Wert größer als der Byte-Bereich ist, wird er in einen negativen Wert umgewandelt. Wenn wir also einen großen Wert in einen Byte-Typ konvertieren, erhalten wir ein anderes Ergebnis als int-Typ.
public class SimpleTesting {
public static void main(String[] args) {
int a = 127; // byte max positive range
System.out.println("int value = " + a);
byte b = (byte) a;
System.out.println("byte value = " + b);
a = 130; // Out of positive byte range
System.out.println("int value = " + a);
b = (byte) a;
System.out.println("byte value = " + b);
}
}
Ausgabe:
int value = 127
byte value = 127
int value = 130
byte value = -126
Int-in-Byte-Konvertierung und umgekehrt in Java
Um einen int-Typ in einen Byte-Typ zu konvertieren, müssen wir explizites Typecasting verwenden. Um das Byte in int zu konvertieren, benötigen wir jedoch kein explizites Casting. Java tut dies implizit. Siehe das Beispiel unten.
public class SimpleTesting {
public static void main(String[] args) {
int a = 230;
System.out.println("int value = " + a);
byte b = (byte) a;
System.out.println("byte value = " + b);
a = b;
System.out.println("int value = " + a);
}
}
Ausgabe:
int value = 230
byte value = -26
int value = -26
Vorzeichenlose Umwandlung von Int in Byte in Java
Wir haben in allen obigen Beispielen eine signierte Konvertierung durchgeführt, aber wenn Sie eine unsignierte Konvertierung wünschen, verwenden Sie den folgenden Code. Hier haben wir den Code & 0xFF
zusammen mit dem int-Wert verwendet, um eine vorzeichenlose Konvertierung zu erhalten. Siehe das Beispiel unten.
public class SimpleTesting {
public static void main(String[] args) {
int a = 230;
System.out.println("int value = " + a);
byte b = (byte) a;
System.out.println("byte value = " + b);
a = b & 0xFF;
System.out.println("int value = " + a);
}
}
Ausgabe:
int value = 230
byte value = -26
int value = 230
Int-to-Byte-Konvertierung und umgekehrt mit Java 8
Wenn Sie mit Java 8 oder einer höheren Version arbeiten, verwenden Sie die Methode toUnsignedInt()
der Klasse Byte
, um eine unsignierte Konvertierung zu erhalten. Siehe das Beispiel unten.
public class SimpleTesting {
public static void main(String[] args) {
int a = 230;
System.out.println("int value = " + a);
byte b = (byte) a;
System.out.println("byte value = " + b);
a = Byte.toUnsignedInt(b);
System.out.println("int value = " + a);
}
}
Ausgabe:
int value = 230
byte value = -26
int value = 230
Int zu Byte mit der Methode byteValue()
in Java
Wir können auch die Methode byteValue() der Klasse Integer
verwenden, um den Byte-Wert nach der Konvertierung zu erhalten. Diese Methode gibt einen Wert mit Vorzeichen zurück. Verwenden Sie es also nur, wenn Sie ein signiertes Ergebnis erhalten möchten. Siehe das Beispiel unten.
public class SimpleTesting {
public static void main(String[] args) {
int a = 230;
System.out.println("int value = " + a);
Integer i = a;
byte b = i.byteValue();
System.out.println("byte value = " + b);
}
}
Ausgabe:
int value = 230
byte value = -26
Verwandter Artikel - Java Int
- Wie man in Java int in char konvertiert
- Konvertieren von Int in Double in Java
- Konvertieren von Objekt in Java in Int
- Liste der Ints in Java
- Konvertieren Integer in Int in Java