Java中三种Set的实现类的用法和区别
Java為開(kāi)發(fā)者提供了大量的工具類(lèi),這給開(kāi)發(fā)人員帶來(lái)了很大方便,但是選擇多了也有困擾,究竟用哪個(gè)類(lèi);我想選擇什么,一是看自己具體需求,二是類(lèi)本身的性能和用法;Java中提供了HashSet、TreeSet、LinkedHashSet三種常用的Set實(shí)現(xiàn),以下具體分析它們的用法和性能。
我們使用Set的原因是Set集合不包含重復(fù)元素,HashSet、TreeSet和LinkedHashSet三種類(lèi)型什么時(shí)候使用它們,使用哪個(gè)這是一個(gè)很重要的選擇性問(wèn)題,正確的選擇會(huì)大大提升程序運(yùn)行效率;總結(jié)一下,如你的需求是要一個(gè)能快速訪問(wèn)的Set,那么就要用HashSet,如果你要一個(gè)排序Set,那么你應(yīng)該用TreeSet,如果你要記錄下插入時(shí)的順序時(shí),你應(yīng)該使用LinedHashSet。把握這幾個(gè)原則,是不是選擇起來(lái)就簡(jiǎn)單多了。
Set接口的特性,Set接口繼承了Collection接口,Set集合中不能包含重復(fù)的元素,每個(gè)元素必須是唯一的,你只要將元素加入set中,重復(fù)的元素會(huì)自動(dòng)移除
?
HashSet
?
HashSet結(jié)構(gòu)圖
?
?
TreeSet
?
TreeSet結(jié)構(gòu)圖
?
?
?
LinkedHashSet?
LinkedHashSet結(jié)構(gòu)圖
總結(jié)
以上是生活随笔為你收集整理的Java中三种Set的实现类的用法和区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Postman: Test
- 下一篇: H5|web移动前端自适应适配布局解决方