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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如果為特定鍵更新值,則更新所有鍵的哈希圖

如果為特定鍵更新值,則更新所有鍵的哈希圖

ABOUTYOU 2022-10-20 17:09:28
我有一個(gè)哈希圖,其中鍵為整數(shù),值作為日期列表。我正在嘗試更新特定整數(shù)的值之一。最初,所有鍵的日期都相同。現(xiàn)在,我想將日期之一設(shè)置為 null 到 101 鍵,當(dāng)我更新特定鍵時(shí),它會(huì)針對(duì)所有鍵進(jìn)行更新。我在哪里做錯(cuò)了?請(qǐng)建議。這是我的代碼最初的日期是這樣設(shè)置的   // Set dates to all records   resultDate = [Mon Jan 01 00:00:00 IST 2018, Fri Dec 31 00:00:00 IST 9999] // Typo here    Set<Integer> records= parsedResults.keySet();        if (records.size() > 0) {                           for (Integer record: records) {                dateMap.get(Integer.parseInt(record));                dateMap.put(record,resultDate);            }        }然后僅將 101 的結(jié)束日期更新為 nullfor (Map.Entry<Integer, List<Date>> entry : dateMap.entrySet()) {            if(entry.getKey().equals(Integer.parseInt("101"))) {                List<Date> dates = entry.getValue();                if(null == effDate) {                    dates.set(0, null);                } else {                    dates.set(0, effDate);                          }                if(null == endDate) {                    dates.set(1, null);                 } else {                    dates.set(1, endDate);                }                dateMap.put(Integer.parseInt("101"), dates);                                                    }        }初始 dateMap 響應(yīng){101=[Mon Jan 01 00:00:00 IST 2018, Fri Dec 31 00:00:00 IST 9999], 102=[Mon Jan 01 00:00:00 IST 2018, Fri Dec 31 00:00:00 IST 9999], 103=[Mon Jan 01 00:00:00 IST 2018, Fri Dec 31 00:00:00 IST 9999]}當(dāng)我更新為 null 之后,{101=[Mon Jan 01 00:00:00 IST 2018, null], 102=[Mon Jan 01 00:00:00 IST 2018, null], 103=[Mon Jan 01 00:00:00 IST 2018, null]}
查看完整描述

2 回答

?
慕哥6287543

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

問(wèn)題是對(duì)于您配對(duì)相同列表對(duì)象的每個(gè)鍵,在 for 循環(huán)中使用new ArrayList(Collection<? extends E> c)構(gòu)造函數(shù)每次創(chuàng)建新對(duì)象


if (records.size() > 0) {               

        for (Integer record: records) {

            dateMap.get(Integer.parseInt(record));  //you can remove this line

            dateMap.put(record,new ArrayList(resultDate));

        }

    }

公共 ArrayList(集合 c)


按照集合的迭代器返回的順序構(gòu)造一個(gè)包含指定集合元素的列表。


查看完整回答
反對(duì) 回復(fù) 2022-10-20
?
偶然的你

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

您的值可能使用一個(gè)帶有 diff 別名的列表


List one = new AraayList();

map.put("k1", one);

map.put("k2", one);

List alias = one;

map.put("k3", alias);

這些值使用相同的實(shí)例,當(dāng)您更新一個(gè)時(shí),其他的會(huì)看到更改。


查看完整回答
反對(duì) 回復(fù) 2022-10-20
  • 2 回答
  • 0 關(guān)注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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