您的位置:首页 > 其它

Ubuntu升级ThunderBird教程

2013-08-06 13:20 190 查看
当两个对象进行比较的时候,我们应该使用equals方法,但是由于基础类型在1.5以前的jdk,大家已经习惯了 == 的方式,所以有时候,会马虎大意依然使用 ==  进行比较,那么这样会有什么问题吗?结果是什么?

?
这样结果的原因是Long类型内部有一个内部类,维护了一个cache,
见Long源码 552行

?
见Long源码 528行

?
-128到127直接的值都放在cache里,不会创建新的对象,所以==比较的时候,结果是正确的,
当超过这个范围,因为是创建的新对象,所以自然不会相等
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: