Collections工具類 幫助類

2021-07-25 21:32:12 字數 3521 閱讀 9706

collections則是集合類的乙個工具類/幫助類,

其中提供了一系列靜態方法,用於對集合中元素進行排序、搜尋以及執行緒安全等各種操作。

1) 排序(sort)

使用sort方法可以根據元素的自然順序 對指定列表按公升序進行排序。列表中的所有元素都必須實現 comparable介面。此列表內的所有元素都必須是使用指定比較器可相互比較的

double array = ;

for (int i = 0; i < array.length; i++)

collections.sort(list);

for (int i = 0; i < array.length; i++)

//結果:112,111,23,456,231

2) 混排(shuffling)

混排演算法所做的正好與 sort 相反: 它打亂在乙個 list 中可能有的任何排列的蹤跡。也就是說,基於隨機源的輸入重排該 list,這樣的排列具有相同的可能性(假設隨機源是公正的)。這個演算法在實現乙個碰運氣的遊戲中是非常有用的。例如,它可被用來混排代表一副牌的card 物件的乙個 list 。另外,在生成測試案例時,它也是十分有用的。

collections.shuffling(list)

double array = ;

for (int i = 0; i < array.length; i++)

collections.shuffle(list);

for (int i = 0; i < array.length; i++)

//結果:112,111,23,456,231

3) 反轉(reverse)

使用reverse方法可以根據元素的自然順序 對指定列表按降序進行排序。

collections.reverse(list)

double array = ;

for (int i = 0; i < array.length; i++)

collections. reverse (list);

for (int i = 0; i < array.length; i++)

//結果:231,456,23,111,112

4) 替換所以的元素(fill)

使用指定元素替換指定列表中的所有元素。

string str = ;

for(int j=0;jcollections.fill(li,"aaa");

for (int i = 0; i < li.size(); i++)

//結果:aaa,aaa,aaa,aaa,aaa

5) 拷貝(copy)

用兩個引數,乙個目標 list 和乙個源 list, 將源的元素拷貝到目標,並覆蓋它的內容。目標 list至少與源一樣長。如果它更長,則在目標 list 中的剩餘元素不受影響。

collections.copy(list,li): 後面乙個引數是目標列表 ,前乙個是源列表

double array = ;

list list = new arraylist();

list li = new arraylist();

for (int i = 0; i < array.length; i++)

double arr = ;

string str = ;

for(int j=0;jcollections.copy(list,li);

for (int i = 0; i //結果:1131,333,23,456,231

6) 返回collections中最小元素(min)

根據指定比較器產生的順序,返回給定 collection 的最小元素。collection中的所有元素都必須是通過指定比較器可相互比較的

collections.min(list)

double array = ;

list list = new arraylist();

for (int i = 0; i < array.length; i++)

collections.min(list);

for (int i = 0; i //結果:23

7) 返回collections中最小元素(max)

根據指定比較器產生的順序,返回給定 collection 的最大元素。collection中的所有元素都必須是通過指定比較器可相互比較的

collections.max(list)

double array = ;

list list = new arraylist();

for (int i = 0; i < array.length; i++)

collections.max(list);

for (int i = 0; i //結果:456

8) lastindexofsublist

返回指定源列表中最後一次出現指定目標列表的起始位置

int count = collections.lastindexofsublist(list,li);

double array = ;

list list = new arraylist();

list li = new arraylist();

for (int i = 0; i < array.length; i++)

double arr = ;

string str = ;

for(int j=0;jint locations = collections. lastindexofsublist (list,li);

system.out.println(「===」+ locations);

//結果 3

9) indexofsublist

返回指定源列表中第一次出現指定目標列表的起始位置

int count = collections.indexofsublist(list,li);

double array = ;

list list = new arraylist();

list li = new arraylist();

for (int i = 0; i < array.length; i++)

double arr = ;

string str = ;

for(int j=0;jint locations = collections.indexofsublist(list,li);

system.out.println(「===」+ locations);

//結果 1

10) rotate

根據指定的距離迴圈移動指定列表中的元素

collections.rotate(list,-1);

如果是負數,則正向移動,正數則方向移動

double array = ;

list list = new arraylist();

for (int i = 0; i < array.length; i++)

collections.rotate(list,-1);

for (int i = 0; i //結果:111,23,456,231,112

Collections工具類小結

collections 是針對集合進行操作的工具類。裡面包含了排序和查詢等方法。collections和 collection 的區別?collections 是針對集合進行操作的工具類,包含了排序和查詢等功能。collection 是單列集合的頂層介面,定義了單列集合的共性功能。collectio...

Collections集合工具類

collections 是針對集合進行操作的工具類,都是靜態方法。collections 中有乙個方法可以一次加入多個元素public static boolean addall collection c,t.elements 該方法使用到了可變引數,即定義時並不知道要傳入多少個實際引數。此時定義成...

Collections集合工具類

collections是集合工具類,用來對集合進行操作。部分方法如下 1 public static void sort listlist 集合元素排序 排序前元素list集合元素 33,11,77,55 collections.sort list 排序後元素list集合元素 11,33,55,77...