久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

Java Integer及int裝箱拆箱對比

瀏覽:17日期:2022-08-24 16:39:28

示例代碼:

class BoxIntInteger { public static void main(String[] args) { Integer a = new Integer(10111); int b = 10111; boolean equal1 = a == b; boolean equal2 = a.equals(b); System.out.println(equal1); System.out.println(equal2); }}

反編譯字節碼:

public static void main(String args[]){ Integer a = new Integer(10111); int b = 10111; boolean equal1 = a.intValue() == b; boolean equal2 = a.equals(Integer.valueOf(b)); System.out.println(equal1); System.out.println(equal2); }

1:可以看出對于Integer與int使用==比較大小的話,優先Integer拆箱。

2: 如果使用equals比較大小的話,則int裝箱。

提示:對于Integer與int之間大小比較優先使用equals比較,否則容易出現空指針,例如:

Integer c= null;System.out.println(c==1);

原因:由于Integer需要調用intValue進行拆箱,因而空指針。

Integer與Integer必須使用equals方法比較,這個就不必解釋了。但是通常我們可以看先Integer與Integer之間使用==也可以正確比較,原因是:Integer對于-128到127之間的數字在緩存中拿,不是創建新對象。

緩存獲取數據源碼:java.lang.Integer#valueOf(int)

public static Integer valueOf(int i) { if (i >= IntegerCache.low && i <= IntegerCache.high) return IntegerCache.cache[i + (-IntegerCache.low)]; return new Integer(i);}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 色伊人网| 天天射天天干 | 日韩欧美一区二区三区免费观看 | 免费网站国产 | 久久久久久久国产精品 | 成人午夜av| 精品久久久久久久久久久久 | 国产一区二区精品丝袜 | 一本色道久久综合狠狠躁篇的优点 | 国产精品一二区 | 日本不卡一区二区 | 国产精品美乳一区二区免费 | 精品国产第一国产综合精品 | www狠狠操 | 亚洲精品一区二区 | 精品一区二区三区在线视频 | 久久久久中文字幕 | 亚洲日本韩国欧美 | 在线成人www免费观看视频 | 啊v在线视频 | 国产欧美一区二区精品性色 | 日韩精品1区 | 日韩免费网站 | 一区二区三区国产 | 最新黄色网址在线播放 | 日韩三级电影免费观看 | 亚洲精品第一区在线观看 | 91污在线观看 | 久久亚洲网 | 午夜视频在线观看网站 | 国产精品成人久久久久 | 国产成人免费网站 | av一二三四 | 亚洲一区二区福利 | 亚洲欧美在线观看 | 亚洲一区二区中文 | 欧美激情五月 | 黄色高清视频 | 亚洲在线视频 | 国产电影精品久久 | 日韩高清国产一区在线 |