我們知道Set的內(nèi)部是用Map實(shí)現(xiàn)的厢岂,這里內(nèi)部也是通過Map實(shí)現(xiàn)的。內(nèi)部是一個(gè)ConcurrentSkipListMap阳距。
先來(lái)看增加方法塔粒,這里完全調(diào)用了map的api,并且設(shè)置value為true
這里然后可以看到設(shè)置為只有缺席才會(huì)增加的判斷筐摘。這就是set的實(shí)現(xiàn)卒茬。那么既然value參數(shù)是true,我們可以看看刪除的操作是把value設(shè)置為false呢還是真正的刪除咖熟、
rmove調(diào)用的是map的鍵值對(duì)刪除的方式扬虚,從這里可以看到是完全刪除,而不是false球恤。
其他的API也完全調(diào)用的是map的API。這里就不講了荸镊。