1. ホーム
  2. java

[解決済み] LongをIntegerに変換する

2022-03-16 12:56:43

質問

を変換する方法 Long の値を Integer の値をJavaで作成することはできますか?

どのように解決するのですか?

Integer i = theLong != null ? theLong.intValue() : null;

または、NULLを気にする必要がない場合。

// auto-unboxing does not go from Long to int directly, so
Integer i = (int) (long) theLong;

そして、どちらの状況でもオーバーフローが発生する可能性があります(LongはIntegerよりも広い範囲を保存できるため)。

Java 8にはオーバーフローをチェックするヘルパー・メソッドがあります(その場合は例外が発生します)。

Integer i = theLong == null ? null : Math.toIntExact(theLong);