标签:
sort 排序
binarySearch 查找
fill 改变列表的所有
replaceAll 覆盖所有相同的
reverse 反转集合内容
swap 交换操作
shuffle 随机分配,就是打乱顺序
Comparator 外部比较器的使用
import java.util.*; public class anli { public static void main (String[] args) { // binarySearchdemo(); // reverseOrderdemo(); Randomdemo(); } public static void Randomdemo() { Random rd = new Random();//随机取整数,random是不能加泛型的,不带参数 sop(rd.nextInt(10));//指定范围 } public static void binarySearchdemo() { List<String> list = new ArrayList<String>(); list.add("adf"); list.add("adgaf"); list.add("adfrwrewrdf"); list.add("adsfasff"); list.add("af"); list.add("arwdfc"); sop(list); Collections.sort(list,new com()); //Collections.sort(list); sop(list); int index = Collections.binarySearch(list,"af",new com());//要把比较器也传递过来 sop(index); //Collections.fill(list,"av"); //改变列表的所有 //sop(list); //Collections.replaceAll(list,"av","va");//覆盖所有相同的 //sop(list); Collections.reverse(list); sop(list); Collections.swap(list,0,1);//交换操作,必须是在list集合中。 sop(list); Collections.shuffle(list);//随机分配 sop(list); } public static void sop(Object obj) { System.out.println(obj); } public static void reverseOrderdemo() { //TreeSet<String> ts = new TreeSet<String>(Collections.reverseOrder());//因为是返回比较器,所以需要是Set或者map结构 //TreeSet<String> ts = new TreeSet<String>(Collections.reverseOrder(new com()));//强转的比较器改变后的顺序。 TreeSet<String> ts = new TreeSet<String>(new com()); ts.add("adf"); ts.add("asfadf"); ts.add("agsfaddf"); ts.add("adsddsf"); ts.add("asdf"); ts.add("af"); Iterator<String> it = ts.iterator(); while(it.hasNext()) { String str = it.next(); sop(str); } } } class com implements Comparator<String> { public int compare(String one,String two) { int value = one.length()-two.length(); if (one.length()==two.length()) { return one.compareTo(two); } return value; } }
标签:
原文地址:http://my.oschina.net/u/2356176/blog/466563