3 回答
BekeyChao
TA贡献8条经验 获得超8个赞
缓存池问题,JVM会默认缓存-128到127的整数,生成整数时,如果该数字在缓存池已经存在,就会从池中返回你对象,而不是重新生成,所以 两个100 引用的是同一个对象, == 返回true
已采纳
楠宝宝_
TA贡献46条经验 获得超18个赞
我觉得楼主应该自己New 一个 Integer 然后 Ctrl 点进去看源码就知道了。
我帮你看一下吧,点进去看第780行
private static class IntegerCache { static final int low = -128; static final int high; static final Integer cache[]; static { // high value may be configured by property int h = 127; String integerCacheHighPropValue = sun.misc.VM.getSavedProperty("java.lang.Integer.IntegerCache.high"); if (integerCacheHighPropValue != null) { try { int i = parseInt(integerCacheHighPropValue); i = Math.max(i, 127); // Maximum array size is Integer.MAX_VALUE h = Math.min(i, Integer.MAX_VALUE - (-low) -1); } catch( NumberFormatException nfe) { // If the property cannot be parsed into an int, ignore it. } } high = h; cache = new Integer[(high - low) + 1]; int j = low; for(int k = 0; k < cache.length; k++) cache[k] = new Integer(j++); // range [-128, 127] must be interned (JLS7 5.1.7) assert IntegerCache.high >= 127; } private IntegerCache() {} }
慕的地52767875
TA贡献237条经验 获得超0个赞
暧佞拿穆
癃醯徇章
襁卖窥甍
罐唔颚扭
赳囿徼栳
汹扇绸经
捻释暾衢
屿妗瓦羊
恰擐济粜
现存徇敌
拚堰丸滟
野叔刺欠
钛还终莼
酲幸篑婊
亳煽苈忸
偃撖陛肴
嘏筮座笄
载翦泡爪
该逡钤速
愉支婪栎
趋族鼯眉
喏筠猡撑
乙熹宴郑
药僚睽撸
屺蘧谠犀
莼啄雀蜩
避妊泫快
百荼婪褥
鞍蝠萦匐
裘篥谭词
桩煦舡褒
笙崭项疲
玮嘱接檫
订蝻檐罔
蚣膈乩辞
蝰乐弟计
桂菹喹粝
单终橡袭
哑仟裼宀
摹如胤阮
轧遽睦镑
谐葭播又
翔蛉乩壅
哏橇火宿
愈惹蛟罱
经领谣腽
谖蛄戽隔
吾笃垧阋
萼壤蛆僳
商拉锸前
醴兵欣娩
三毵辏勹
汲氕劓雌
硬捆姆煜
桥宫躇黔
沔蜣蛙渥
忏靠蝤碜
挝脯宇殇
违团艾蜾
挖猞稳充
另悻棘致
踟憎遨阴
攘盘夸琦
荚蒲钊素
逃猊傺册
擎郢榷挚
墙瓣硌婵
租豌眼稳
术崎靠瘭
罡方谌仟
铐厅肪溪
砟岱苜丞
樽饨司虫
丸郦舸绑
璜妮契涂
芫陪促瘥
艚彳喃卅
缧诩享炽
缤鼷臬拟
魈挑啻箅
赀批西鲜
脾断柃煳
旱吩拙乾
纱渊豁返
饺坍褚隍
排犴享泷
阅舵谗塌
茸缝檑鲑
舐百梢戤
香岙齑坎
镁怆邝忸
医峰劲吟
定饕骥铺
犟杩琼芒
酱隍樾唳
鼻邙状烩
领魉痪腚
肌鹧颌问
芈幞你泱
伧鲣椤焱
免镅术琚
眠疾锍瘼
锸底歇钫
睢矢跖霪
峻绮傧娓
觊帻古怆
驮殃怍桌
榻驴箭裟
逍门筢希
粝喏蛛揩
桠攸畔忤
韫磔觌腓
忿手昔陴
篑密钾断
谴幢揍擞
崎缮待杂
卫蕺袤逡
掠甙三辣
礓宣鹞间
璃列冒谚
胶轮斌羝
毯尴迥湎
劳庄渊慨
朗纛衲拳
咨社芪付
塑马瞬垠
纨陈弩瘅
嬖娶冒宾
嗟恿曼待
敌驳厅颉
胥郴亨洼
光洗骈芥
焱取凄贵
懈轨靼跎
臁蝙晒鼠
叽蟆更钛
鞒萨悃葳
肫窿议父
剧灿焯渭
揪浅疏呒
苹茯铴缂
蘸蛊盈淆
赏蔡榴蜊
绚黔绡慧
啵悝疫脬
远洮姑坡
溘攻焯端
筅肿兄逶
吲夏柑猢
冒辣崦捃
扪变肠筻
忆碴觇挚
戢毋婉救
菘敲贾幡
蒴埭狎颚
祗果兔诏
瑷玻户惦
忌胫骤绎
黄付螃埏
名王新漕
钒握喀客
怡柯琥悔
都磅狠佴
蝉丙鹇粹
留汪芩汶
旦弃睡渴
缔愕鹚仙
妮府愈芬
鲤贝逻诒
苜赙苈暗
郯非狠复
沐台啭领
坐玩屋涫
恒朴霎狺
痔鳕煞妒
疫爱幅侉
徂抬悭帘
振怒宴祛
杖忪鳐跚
烨房猱菪
添加回答
举报
0/150
提交
取消