Java中的TreeSet集合会自动将元素升序排序
我們都知道,java中的集合可以分為這么兩大類:Collection和Map ,其中Collection 接口中又可以派生出來兩個接口,分別為:List和Set接口。
其中,Set下有HashSet,LinkedHashSet,TreeSet;List下有ArrayList,Vector,LinkedList,關于List集合中的ArrayList,Vector,LinkedList前面文章都分享過,大家想看的可以去看看歷史推送。
今天我們來看看Set集合。
01
HashSet
HashSet的底層數據結構是哈希表,特點:集合中的元素無序且唯一。可以用兩個方法離開保證集合元素的唯一性:hashCode()和equals();
02
LinkedHashSet
LinkedHashSet的底層數據結構是鏈表和哈希表。特點:FIFO插入有序且唯一。我們可以由鏈表保證元素有序,由哈希表保證元素唯一;
03
TreeSet
TreeSet的底層數據結構是紅黑樹,特點:唯一且有序, TreeSet集合會自動對元素進行排序,默認是升序排序。
如果你想降序或者按照對象來排序,可以借助于比較器的方式來實現。
下面是一段簡單的TreeSet集合排序測試代碼:
public?static?void?main(String[] args) {SortedSet<Integer> ages = new?TreeSet<Integer>();ages.add(69);ages.add(96);ages.add(20);ages.add(63);System.out.println("遍歷集合中的元素:");for?(Integer i:ages) {System.out.print(i+" ");}}運行結果如下:
從代碼中我們可以看到,添加元素時,是隨機添加的,數值小的有的在后面,有的在前面,但是添加到TreeSet集合中的時候,會自動升序排序。
往期精彩
“老師,請您多關注一下我吧!!!”
2020-11-15
晨讀,難道只是為了完成任務而讀的嗎?
2020-11-14
Vector是線程安全的?
2020-11-13
為什么要有周考?周考是用來干什么的?
2020-11-12
剛剛,改造了下BaseDao……
2020-11-11
分享幾個花拳繡腿的網頁布局!
2020-11-10
點分享
點點贊
點在看
總結
以上是生活随笔為你收集整理的Java中的TreeSet集合会自动将元素升序排序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 显示器支架怎么装显示器支架怎么装回箱子
- 下一篇: Java GUI界面