Neden bu kod satırları farklı değerler döndürmek hakkında hiçbir fikrim yok:
System.out.println(Integer.valueOf("127")==Integer.valueOf("127"));
System.out.println(Integer.valueOf("128")==Integer.valueOf("128"));
System.out.println(Integer.parseInt("128")==Integer.valueOf("128"));
Çıktı:
true
false
true
Birincisi trueve ikincisi neden geri dönüyor false? Ben arasına bilmiyorum orada farklı bir şey mi 127ve 128? (Tabii ki biliyorum 127< 128.)
Ayrıca, üçüncüsü neden geri dönüyor true?
Bu sorunun cevabını okudum , ama yine de nasıl dönebileceğini trueve ikinci satırdaki kodun neden döndüğünü alamadım false.
.equals(), aksi takdirde tüm bahisler kapalıdır.