第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如果在 if 條件下使用,哈希映射的 isEmpty() 和 size() 之間有什么區(qū)別?

如果在 if 條件下使用,哈希映射的 isEmpty() 和 size() 之間有什么區(qū)別?

大話西游666 2022-08-03 16:12:56
我必須處理哪個正在發(fā)生。我應(yīng)該使用或()內(nèi)部條件嗎?NullPointerExceptionHashmapmap.isEmpty()map.size() > 0if哪一個更好?
查看完整描述

4 回答

?
慕容708150

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超4個贊

以下是類中 和 在類中的實(shí)現(xiàn):size()isEmpty()HashMap


public int size() {

    return size;

}


public boolean isEmpty() {

    return size == 0;

}

因此,只需檢查返回的相同變量即可。它主要只是一種方便的方法。您可能希望使用手動比較大小的一個原因是,前者可以更清楚地了解您的代碼實(shí)際檢查的內(nèi)容。HashMap#isEmpty()sizesize()isEmpty()


查看完整回答
反對 回復(fù) 2022-08-03
?
DIEA

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超3個贊

首先對對象進(jìn)行空檢查,然后檢查以避免MapEmptyNullPointerException

if(map != null && !map.isEmpty())


查看完整回答
反對 回復(fù) 2022-08-03
?
楊__羊羊

TA貢獻(xiàn)1943條經(jīng)驗(yàn) 獲得超7個贊

map.size()是O(1),而復(fù)雜度也是一樣的,所以從復(fù)雜度和執(zhí)行點(diǎn)來看,它們之間基本上沒有區(qū)別。map.isEmpty()


如果你仔細(xì)看看


public boolean isEmpty() {

    return size == 0;

}

它什么都不做,只是返回大小==0;


其他偏愛的原因可能是:.isEmpty().size()


它更具表現(xiàn)力(代碼更易于閱讀和維護(hù))

僅供參考,在處理集合時,與map.isEmpty()相比具有各種優(yōu)勢,就像您可以稍后不執(zhí)行以下操作一樣。map.size()map.size()


String str = "abcd";

Map<Integer,String> map = new HashMap<>();

String[] strings = str.split("");

for(String s: strings) {

     map.put(map.size(), s);

 }


查看完整回答
反對 回復(fù) 2022-08-03
?
尚方寶劍之說

TA貢獻(xiàn)1788條經(jīng)驗(yàn) 獲得超4個贊

map.size() == 0等于 。例如,IntelliJ IDEA具有始終使用的檢查而不是。map.isEmpty()isEmpty()size() == 0



查看完整回答
反對 回復(fù) 2022-08-03
  • 4 回答
  • 0 關(guān)注
  • 180 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號