1. Collections是一个操作Set、List和Map等集合的工具类,提供静态方法对集合元素进行排序、查询和修改等操作。
2. Collections排序方法
List list = new ArrayList();
list.add("tom");
list.add("jACK");
list.add("FENGFENG");
list.add("TAOTAO");
list.add("SMENG");
Collections.reverse(list);
//反转排序
Collections.shuffle(list);
//随机排序
Collections.sort(list);
//升序(自然排序)
Collections.sort(list, new Comparator() {
//重写compare方法改变比较规则
@Override
public int compare(Object o1, Object o2) {
return ((String) o1).length() - ((String) o2).length() ;
//按字符串长度排序
}
});
Collections.swap(list,0, 1);
//交换下标为0,1的元素
3.Collections 最大最小值
//Object max(Collection)根据元素的自然顺序,返回给定集合中的最大元素
System.out.println("max member in list is:" + Collections.max(list));
//Object max(Collection, Comparator) 根据指定的顺序,返回给定集合中的最大元素
Object maxObject = Collections.max(list, new Comparator() {
@Override
public int compare(Object o1, Object o2) {
return ((String) o1).length() - ((String) o2).length();
}
});
System.out.println("the max memeber in list is: " + maxObject);
System.out.println("min member in list is: " + Collections.min(list));
//Object min(Collection, Comparator) 根据指定的顺序,返回给定集合中的最小元素
Object minObject = Collections.min(list, new Comparator() {
@Override
public int compare(Object o1, Object o2) {
return ((String) o1).length() - ((String) o2).length();
}
});
System.out.println("the min memeber in list is: " + minObject);
System.out.println(Collections.frequency(list, "tom"));
//Collections.frequency(Collection, Object);返回对象出现的次数
ArrayList dest = new ArrayList();
//为了完成拷贝,先给dest赋值,使其大小和list一样
for(int i = 0; i < list.size(); i++) {
dest.add("");
}
Collections.copy(dest, list);
//将list中的元素拷贝至dest
System.out.println("dest is: " + dest);
//boolean replaceAll(List list, Object oldVal, Object newVal):
// 使用新值替换List对象的所有旧值
Collections.replaceAll(list, "tom","old tom");
System.out.println("list=" + list);