package ocm.axb.cheney.collection;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class CollectionSort {
public CollectionSort() {
}
@SuppressWarnings("unchecked")
public static void main(String args[]) {
double array[] = { 111, 22, 333, 40, 10, 411 };
double targetArray[] = { 1, 2, 10, 4, 7, 6 };
List list1 = new ArrayList();
List list2 = new ArrayList();
returnList(list1, array);
returnList(list2, targetArray);
// 使用sort方法可以根据元素的自然顺序 对指定列表按升序进行排序。列表中的所有元素都必须实现
// Comparable 接口。此列表内的所有元素都必须是使用指定比较器可相互比较的
//Collections.sort(list1);
/* 混排(Shuffling)
混排算法所做的正好与 sort 相反: 它打乱在一个 List 中可能有的任何排列的踪迹。也就是说,基于随机源的输入重排该 List, 这样的排列具有相同的可能性(假设随机源是公正的)。这个算法在实现一个碰运气的游戏中是非常有用的。例如,它可被用来混排代表一副牌的 Card 对象的一个 List 。另外,在生成
测试案例时,它也是十分有用的*/
//Collections.shuffle(list1);
//反转(Reverse) 使用Reverse方法可以先根据元素的自然顺序(Collections.sort(list1);)再对指定列表按降序进行排序
//Collections.reverse(list1);
//替换所以的元素(Fill)使用指定元素替换指定列表中的所有元素。
//Collections.fill(list1, "aaa");
//拷贝(Copy) 用两个参数,一个目标 List 和一个源 List, 将源的元素拷贝到目标,并覆盖它的内容。目标 List 至少与
//源一样长。如果它更长,则在目标 List 中的剩余元素不受影响。 Collections.copy(list,li): 后面一个参数是目标列表 ,前一个是源列表
//Collections.copy(list1,list2);
//返回Collections中最小元素(min)或者最大元素(max)
//根据指定比较器产生的顺序,返回给定 collection 的最小元素。collection 中的所有元素都必须是通过指
//定比较器可相互比较的
//System.out.println(Collections.min(list1));
//System.out.println(Collections.max(list1));
//交换一个线性表中两个元素的位置。
Collections.swap(list1, 0, 1);
for (int i = 0; i < array.length; i++) {
System.out.println(list1.get(i));
}
}
@SuppressWarnings("unchecked")
public static List returnList(List list, double array[]) {
for (int i = 0; i < array.length; i++) {
list.add(new Double(array[i]));
}
return list;
}
}
Collections类方法的简单使用
最新推荐文章于 2024-08-15 00:08:17 发布