2007年9月12日 星期三

Collections API 簡介

Collections 提供了很多好用的method讓您操作資料結構
以下用一個簡單的範例來介紹:

double array[] = {123, 112, 57, 355, 255};
double subArr[] = {57};

List<Double> list = new ArrayList();
List subList = new ArrayList();

for (int i = 0; i < array.length; i++) {
list.add(new Double(array[i]));
}

for (int j = 0; j < subArr.length; j++) {
li.add(new Double(subArr[j]));
}

//排序, 印出 57,112,123,255,355
Collections.sort(list);

//反向排序
Collections.sort(list, Collections.reverseOrder());

//亂數排序
Collections.shuffle(list);

//倒轉元素, 印出 255,355,57,112,123
Collections.reverse(list);

//移動元素, 正數元素會往右移動, 負數則往左移動
Collections.rotate(list, 1);

//元素出現的頻率, 該例回傳 1
Collections.frequency(list, new Double(112));

//搜尋該元素的位置, 但使用該 method 必須是先排序過的
//例如使用Collections.sort(), 不然會回傳負值, 本例印出 1
Collections.binarySearch(list, new Double(112));

//將新元素取代原來的物件內容, 該例會全部印出 100
Collections.fill(list, new Double(100));

//比較子元素最後的位置, 本例印出 2(若找不到回傳-1)
Collections.lastIndexOfSubList(list,subList)

//比較子元素的位置
Collections.indexOfSubList(list,subList)

0 意見: