这个StringBuffer怎么排序啊?compare该怎么重写才能按想要的方式排序?
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class PracticeSort {
List <String> list=new ArrayList();
/*
* stringList()方法
* 生成一个随机长度10以内的字符串
* */
public void sringList(){
String s="adcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Random random=new Random();
StringBuffer sb=new StringBuffer();
int rand=random.nextInt(10)+1;
for(int i=0;i<rand;i++){
int x=random.nextInt(62);
sb.append(s.charAt(x));
}
list.add(sb.toString());-------------->这里只能把StringBuffer转换了才能用sort排序,但是排出来的顺序并不理想,不是想要的。
}
/*
* 生成10个字符串存放到list集合中,调用stringList()方法;
*
* */
public void getTen(PracticeSort p){
for(int i=0;i<10;i++){
p.sringList();
}
}
/*
* 遍历list打印输出
* */
public void foreach(PracticeSort p){
for(int i=0;i<p.list.size();i++){
System.out.println(p.list.get(i));
}
}
/**
* 利用Collections.sort()对泛型为String的List进行排序:
* 1、创建List<String>之后,往其中添加十条随机字符串
* 2、字符串长度为10以内
* 3、每条字符串都为随机生成的字符
* 4、字符可以重复,但是字符串不可重复
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
PracticeSort s=new PracticeSort();
s.getTen(s);
System.out.println("-------------排序前--------------");
s.foreach(s);
System.out.println("-------------排序后--------------");
Collections.sort(s.list);
s.foreach(s);
}
}
这个StringBuffer怎么排序啊?compare该怎么重写才对?