您的位置:首页 > 编程语言 > Java开发

Java中判断两个Long类型是否相等

2018-04-02 14:46 399 查看
开发中有遇到Long类型比较是否相等,比如Long A和Long B判断是否相等,当时习惯性的直接A==B;运行时A等于B,但一直判断不相等。换成了A.equals(B)或A.longValue()==B.longValue()都是正确的;   改完bug,觉得需要看看是为什么,通过看Long.class,可以看出


   如果值在[-128,127]之间,会放在缓存里面,而超过这个范围就要new一个新的对象,也就是说==不能判断对象是否相等。A或者B值设置的都比较小时可能没问题,数据较大时就GG了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: