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

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

hashset set方法取值問(wèn)題,運(yùn)行結(jié)果中,結(jié)果集只有一個(gè)元素,size() 獲取的值 > 1

hashset set方法取值問(wèn)題,運(yùn)行結(jié)果中,結(jié)果集只有一個(gè)元素,size() 獲取的值 > 1

哆啦的時(shí)光機(jī) 2019-01-17 14:26:46
1、如下代碼 package gof.singleton; import java.util.HashSet; import java.util.Set; import java.util.concurrent.CountDownLatch; //多線程安全 public class Singleton2 { private static Singleton2 singleton = new Singleton2(); private Singleton2() {} public static Singleton2 getSingleton() { return singleton; } public static void main(String[] args) throws InterruptedException { for(int j = 0;j<10;j++) { CountDownLatch c = new CountDownLatch(1000); Set<Singleton2> list = new HashSet<Singleton2>(); for(int i= 0 ;i<1000;i++) { new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(2); } catch (InterruptedException e) { e.printStackTrace(); } list.add(Singleton2.getSingleton()); c.countDown(); } }).start(); } c.await(); System.out.println(list + "-" + list.size()); //list.stream().forEach(System.out::println); } } } 2、一種可能的結(jié)果 [gof.singleton.Singleton2@a627065]-3 [gof.singleton.Singleton2@a627065]-5 [gof.singleton.Singleton2@a627065]-2 [gof.singleton.Singleton2@a627065]-5 [gof.singleton.Singleton2@a627065]-2 [gof.singleton.Singleton2@a627065]-1 [gof.singleton.Singleton2@a627065]-4 [gof.singleton.Singleton2@a627065]-3 [gof.singleton.Singleton2@a627065]-1 [gof.singleton.Singleton2@a627065]-3 3、問(wèn)題為什么集合中元素和打印的個(gè)數(shù)不匹配### 題目描述 題目來(lái)源及自己的思路 相關(guān)代碼 // 請(qǐng)把代碼文本粘貼到下方(請(qǐng)勿用圖片代替代碼) 你期待的結(jié)果是什么?實(shí)際看到的錯(cuò)誤信息又是什么?
查看完整描述

2 回答

?
慕桂英4014372

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

HashSet使用add方法就是調(diào)HashMap的put方法,list.size()就是HashMap的size()方法,返回HashMap的size屬性,
list的size大于1是因?yàn)镠ashMap并發(fā)導(dǎo)致線程安全問(wèn)題。
換成Set<Singleton2> list =Collections.synchronizedSet(new HashSet<Singleton2>());即可

查看完整回答
反對(duì) 回復(fù) 2019-02-12
?
慕蓋茨4494581

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

Java 關(guān)于 HashSet 的文檔中明確表明該類不是線程安全的,所以絕對(duì)不要用多個(gè)線程操作同一個(gè) HashSet 對(duì)象。

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

添加回答

舉報(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)