欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Java中值類型和引用類型的比較與問題解決

Java中值類型和引用類型的比較與問題解決,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

創(chuàng)新互聯(lián)建站專注于企業(yè)網(wǎng)絡(luò)營銷推廣、網(wǎng)站重做改版、韶關(guān)網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5網(wǎng)站設(shè)計(jì)、成都商城網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價格優(yōu)惠性價比高,為韶關(guān)等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

一、問題描述

前幾天因?yàn)橐粋€需求出現(xiàn)了Bug。說高級點(diǎn)也挺高級,說白點(diǎn)也很簡單。其實(shí)也就是一個很簡單的Java基礎(chǔ)入門時候的值類型和引用類型的區(qū)別。只是開發(fā)的時候由于自己的問題,導(dǎo)致小問題的出現(xiàn)。還好突然想起來以前看過一篇對于該問題講解的博客,才能快速定位問題的位置。防止下次再犯,順便也就把這個當(dāng)做筆記記錄下來,放入自己的Bug集中。

二、值類型和引用類型的比較

這個大家應(yīng)該都是沒問題的,很簡單。值類型比較是比較值,引用類型是比較地址。對于正常的操作來說,比較值類型我們可以直接使用 == ,引用類型就使用equals來做比較就不會出現(xiàn)問題。

引用類型

/**  * 測試Integer  */ public static void test_Integer(){  Integer number_01 = 10;  Integer number_02 = 10;  System.out.println(number_01.equals(number_02)); }

上面的測試結(jié)果很明顯是true,絕對沒有問題的。

值類型

/**  * 測試int  */ public static void test_Int(){  int number_01 = 10;  int number_02 = 10;  System.out.println(number_01 == number_02); }

上面的測試結(jié)果很明顯是true,絕對沒有問題的。

三、問題

但是問題就出現(xiàn)在,開發(fā)的使用為了防止出現(xiàn)為null的時候會被系統(tǒng)使用0來代替,所以就使用了Integer類型來做操作,并且在比較的時候用了 == 。這就很尷尬了,開始自測完全沒出現(xiàn)問題,因?yàn)闆]到達(dá)記錄數(shù)。很開心,把代碼提交下班,妥妥的。但是尷尬的事情來了,測試報(bào)告出現(xiàn)在了郵箱里面了。

初始沒問題的情況

/**  * 測試Integer  */ public static void test_Integer(){  Integer number_001 = 10;  Integer number_002 = 10;  System.out.println(number_001 == number_002); }

結(jié)果:

當(dāng)記錄超過一定數(shù)的時候,出現(xiàn)問題

/**  * 測試Integer  */ public static void test_Integer(){  Integer number_001 = 128;  Integer number_002 = 128;  System.out.println(number_001 == number_002); }

結(jié)果:

四、解決

后面一想,很快確定問題了。是自己的馬虎,偷懶使用了 == ,造成這次問題的出現(xiàn),當(dāng)改為equals就可以妥妥的回家了。開始自測沒問題主要還是因?yàn)镮nteger 的緩存搞的事情。扒拉到Integer的源碼,發(fā)現(xiàn)里面用了緩存機(jī)制,對-128~127的值做了緩存,如果在這個值區(qū)間內(nèi)使用==來做比較的話,比較的就是值了,所以才造成開始以為沒問題,后面運(yùn)行了一段時間后就出現(xiàn)問題了。當(dāng)不在值區(qū)間內(nèi)就必須使用equals來完成比較。

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() {

    } 

 }

關(guān)于Java中值類型和引用類型的比較與問題解決問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。

分享名稱:Java中值類型和引用類型的比較與問題解決
網(wǎng)址分享:http://aaarwkj.com/article16/gjijgg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、企業(yè)網(wǎng)站制作、企業(yè)建站、云服務(wù)器、網(wǎng)站維護(hù)、網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管
日日爱欧美精品亚洲成| 亚洲激情午夜福利视频| 欧美女人又粗又长亚洲| 欧美性极品少妇精品网站| 欧美成人精品欧美一级乱| 一区二区三区人妻日韩| 欧美三级高清视频在线播放| 欧美激情欧美精品欧美色浮| 97人妻精品一区二区三区六| 亚洲熟女午夜毛片av毛片| 日韩女优在线播放一区二区| 黄色高清无遮挡在线观看| 青青草成人免费在线公开视频| 亚洲综合另类小说专区| 精品啪啪高潮一区二区| 日韩高清精品视频在线| 精品久久久久久久久无| 91青青草原免费观看| 色久悠悠婷婷综合在线亚洲| 青青草视频在线针对华人| 欧美 日韩一区二区在线| 成人激情视频在线网页| 日韩美女毛片啪啪响| 亭亭丁香激情五月涩久久| 亚洲国产99在线精品一区| 国产欧美日韩一区二区三区四区| 国产一级r内射视频播放| 能在线播放的国产三级| 午夜福利精品在线观看| 久久久久久精品妇女| 国产成人亚洲精品午夜国产馆| 久久精品国产亚洲av高清一区 | 久久五十路初次拍五十路| 日本黄色中文字幕在线观看| av免费在线观看大全| 国产精品又大又黑又长又粗| 一二三日韩电影在线观看 | 6080yy精品一区二区三区| 天天操夜夜骑日日干| 高清av在线国产成人精品自拍| 亚洲欧美日韩另类精品一区二区三区|