您好,登錄后才能下訂單哦!
這篇文章主要介紹Java中l(wèi)ist和set有那些區(qū)別,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
list與set方法的區(qū)別有:list可以允許重復(fù)對象和插入多個(gè)null值,而set不允許;list容器是有序的,而set容器是無序的等等
Java中的集合共包含三大類,它們分別是Set(集),List(列表)以及Map(映射)。它們都處在java.util中并且都為接口。它們各自都有各自的實(shí)現(xiàn)類。Set的實(shí)現(xiàn)類主要有HashSet和TreeSet,List的實(shí)現(xiàn)類主要有ArrayList。接下來將為大家介紹這兩大類之間的區(qū)別,具有一定的參考作用,希望對大家有所幫助。
【推薦課程:Java教程】
List方法與set方法的區(qū)別
(1)重復(fù)對象
list方法可以允許重復(fù)的對象,而set方法不允許重復(fù)對象
(2)null元素
list可以插入多個(gè)null元素,而set只允許插入一個(gè)null元素
(3)容器是否有序
list是一個(gè)有序的容器,保持了每個(gè)元素的插入順序。即輸出順序就是輸入順序,而set方法是無序容器,無法保證每個(gè)元素的存儲(chǔ)順序,TreeSet通過 Comparator 或者 Comparable 維護(hù)了一個(gè)排序順序
(4)常用的實(shí)現(xiàn)類
list方法常用的實(shí)現(xiàn)類有ArrayList、LinkedList 和 Vector。其中ArrayList 最為流行,它提供了使用索引的隨意訪問,而LinkedList 則對于經(jīng)常需要從 List 中添加或刪除元素的場合更為合適,Vector 表示底層數(shù)組,線程安全
Set方法中最流行的幾個(gè)實(shí)現(xiàn)類是 HashSet、LinkedHashSet 以及 TreeSet。最流行的是基于 HashMap實(shí)現(xiàn)的 HashSet;TreeSet 還實(shí)現(xiàn)了 SortedSet 接口,因此 TreeSet 是一個(gè)根據(jù)其 compare() 和compareTo() 的定義進(jìn)行排序的有序容器
以上是Java中l(wèi)ist和set有那些區(qū)別的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。