在Java语言中,整型对象在不同数值范围内的比较分两种情况:
1:[color=red]数据在一个字节(-128至127)范围内[/color],则直接从缓存数组中取值,而不再重新创建对象。故此范围的数据对象比较的时候, == 和equals的比较结果都为true.
2:数据大于一个字节,则新创建一个对应的实例对象。故==得比较结果为false,而equals的比较结果为true.
example:
Long fir = 127l;
Long sec = 127l;
boolean result = (fir == sec) //true
result = (fir.equals(sec)) //true
Long thr = 128l;
Long fou = 128l;
result = (fir == sec) //false
result = (fir.equals(sec)) //true
1:[color=red]数据在一个字节(-128至127)范围内[/color],则直接从缓存数组中取值,而不再重新创建对象。故此范围的数据对象比较的时候, == 和equals的比较结果都为true.
2:数据大于一个字节,则新创建一个对应的实例对象。故==得比较结果为false,而equals的比较结果为true.
example:
Long fir = 127l;
Long sec = 127l;
boolean result = (fir == sec) //true
result = (fir.equals(sec)) //true
Long thr = 128l;
Long fou = 128l;
result = (fir == sec) //false
result = (fir.equals(sec)) //true
本文深入探讨了Java语言中整型对象在不同数值范围内的比较机制,解释了数据在一个字节范围内的直接比较方式及大于一个字节时的实例对象创建过程,并通过实例代码演示了比较操作的具体应用。
1220

被折叠的 条评论
为什么被折叠?



