我不知道为什么这些代码行返回不同的值:
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"));
输出为:
true
false
true
为什么第一个返回true,第二个返回false?有什么不同,我不知道之间127和128?(我当然知道127< 128。)
另外,为什么第三个返回true?
我已经阅读了这个问题的答案,但是我仍然没有知道它如何返回true,以及为什么第二行中的代码返回false。
.equals(),否则所有选择均不适用。