标签:
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