Code Fix

上級Integer の == が 127 までしか動かない理由 › パターン2

Integer の == が 127 までしか動かない理由

-128〜127のキャッシュが原因です。

 1  public class Main {
 2      public static void main(String[] args) {
 3          Integer a = 100, b = 100;
 4          System.out.println(a __ b);
                                  ^
 5      }
 6  }
出力: true(127以下なのでたまたま通ります。128にすると false になります)

空欄を埋めてビルドを通す

広告
広告スロット(未設定)

Integer の == が 127 までしか動かない理由

たまたま動く挙動に依存する危険性を扱います。

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)