java自動排序的集合 javaset集合的值可以排序嗎?
javaset集合的值可以排序嗎?我們知道集合是無序的,可以使用TreeSet類。樹集排序的規(guī)則是什么?1treeset支持兩種排序方法:自然排序和自定義排序。默認情況下,TreeSet采用自然排序。
javaset集合的值可以排序嗎?
我們知道集合是無序的,可以使用TreeSet類。樹集排序的規(guī)則是什么?1treeset支持兩種排序方法:自然排序和自定義排序。默認情況下,TreeSet采用自然排序。自然排序:TreeSet調(diào)用set元素的CompareTo(objectobj)方法來比較元素的大小為什么set元素有CompareTo方法?因為set element對象實現(xiàn)了可比較的接口。此方法返回一個整數(shù)值。當一個對象調(diào)用此方法時,它會與另一個對象進行比較。例如,obb1。CompareTo(obb2)如果返回0,則表示兩個對象相等,例如如果該方法返回正整數(shù),則表示obji1大于obji2。如果該方法返回負整數(shù),則表示obji1小于obji2,因此需要使用TreeSet集合進行自然排序,并且元素必須實現(xiàn)可比較接口。但是,一些常見的Java類已經(jīng)實現(xiàn)了該接口,例如:stringcharacterboolean datetimebigdecimalbiginteger等,例如:TreeSet<string>Ts=new reeSet<string>()ts.添加(“b”)ts.添加(“c”)ts.添加(“a”)系統(tǒng)輸出打印(TS)結果:ABC
包通信王測試
導入java.util.ArrayList
導入java.util.Collections文件
導入java.util.List
導入java.util.Random文件
public class SortRandom{
/**
*@param args
*/
public static void main(String[]args){
//TODO自動生成的方法存根
int n=10
List<Integer> List=new ArrayList<Integer>(n)
int nTemp=0
Random rd=new Random()
對于(int i=0 i< n i){
nTemp=下一條路(10000)
列表.添加(nTemp)
}
對于(整數(shù)i:list){系統(tǒng)打?。ㄎ摇啊保?/p>
}系統(tǒng)輸出打?。ā皀-----排序后---”)集合.排序(list)
對于(整數(shù)i:list){系統(tǒng)打?。ㄎ摇啊保?/p>
}
}