论坛首页 Java企业应用论坛

蛋疼的JAVA比较相等符号

浏览 16757 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (3) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-10-17  
这种题,没啥意思。。
0 请登录后投票
   发表时间:2011-10-17  
出这种提得人真是白痴的不行,知道integer 小于128时相等,这个是飞翔模式,另外==比较的是堆得地址~
0 请登录后投票
   发表时间:2011-10-17  
true
false
true
楼主一看jdk源码就知道了,有个缓存的机制
 public static Integer valueOf(int i) {
	final int offset = 128;
	if (i >= -128 && i <= 127) { // must cache 
	    return IntegerCache.cache[i + offset];
	}
        return new Integer(i);
    }

看到了吧~其实整数型的基本类型都有缓冲机制。Long Integer Short都有类似的机制。
0 请登录后投票
   发表时间:2011-10-17  
搞笑吧,这个也算陷阱?就你自己掉进去了吧。。。
0 请登录后投票
   发表时间:2011-10-17  
可看到来自襄阳的了,呵呵
0 请登录后投票
   发表时间:2011-10-17  
这种题实在没啥意思。

0 请登录后投票
   发表时间:2011-10-17  
Integer类型 默认-128~127使用缓存数据, 在默认的范围内使用的是同一对象,所以相等,否则不等

很不错
0 请登录后投票
   发表时间:2011-10-17  
N年前就知道了,知道了就无聊了。不知道就觉得很神奇的题目
0 请登录后投票
   发表时间:2011-10-17  
什么东西不是这样啊,知道了就很无聊,不知道就很神奇

莫非楼上的人生下来就知道这些问题?
0 请登录后投票
   发表时间:2011-10-17  
恩,以前真的没有注意过。试了一下,真是这样的。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics