Java challenge Integer
問題:何が出力されるのか?
Integer number1 = 5; Integer number2 = 5; Integer number3 = 128; Integer number4 = 128; // True or False ? System.out.println(number1 == number2); System.out.println(number3 == number4);
考え
False, False が出力されるのかなと思いましたが、、、
True, False が出力されました。。
なぜ?
どうも、-128 から 127 は JREがキャッシュするらしく、同じ値が参照されるらしい。
パフォーマンス向上のため?
コード
Java/IntegerChallenge.java at master · blueskyarea/Java · GitHub