Wie konvertiert man eine Long
Wert in eine Integer
Wert in Java?
Antworten
Zu viele Anzeigen?
Jeff Foster
Punkte
41930
Sie müssen es abtippen.
long i = 100L;
int k = (int) i;
Beachten Sie, dass ein long einen größeren Bereich hat als ein int, so dass Daten verloren gehen können.
Wenn Sie von den Schachteltypen sprechen, dann lesen Sie die Dokumentation .
Jasper de Vries
Punkte
16523
In Java 8 können Sie Folgendes verwenden Math.toIntExact
. Wenn Sie mit null
Werte, verwenden:
Integer intVal = longVal == null ? null : Math.toIntExact(longVal);
Das Gute an dieser Methode ist, dass sie ein ArithmeticException
wenn das Argument ( long
) überläuft eine int
.
Adi
Punkte
2024
Die beste und einfachste Methode ist, dies zu tun:
public static int safeLongToInt( long longNumber )
{
if ( longNumber < Integer.MIN_VALUE || longNumber > Integer.MAX_VALUE )
{
throw new IllegalArgumentException( longNumber + " cannot be cast to int without changing its value." );
}
return (int) longNumber;
}
Edwin Miguel
Punkte
419
Anjal Saneen
Punkte
2968