给大佬递茶
2018-11-02 14:45
public void testSort2(){
List<String>sb=new ArrayList<String>();
Random random=new Random();
//生成十条不重复的字符串(由数字和字母组成)
for(int i=0;i<10;i++){
StringBuffer str=new StringBuffer();
do{
//字符串长度为10以内的整数,nextInt()范围为[0,10),字符串长度不想设置为空就加1
int size=1+random.nextInt(10);
//随机生成字符串
for(int tempsize=0;tempsize<size;tempsize++){
int c;
do{
//随机生成0到122的数字,0到9表示数字字符,65到90表示'A'到'Z'
//97到122表示'a'到'z'
c=(int)(Math.random()*123);
}
//当生成的字符为'0'到'9'或'a'到'z'或'A'到'Z'时跳出
while(!((c>=0&&c<=9)||(c>='a'&&c<='z')||(c>='A'&&c<='Z')));
if(c>=0&&c<=9){
String s=Integer.toString(c);
str.append(s);
}
else{
char cr=(char)c;
String s=String.valueOf(cr);
str.append(s);
}
}
}while(sb.contains(str.toString()));
//如果list没有该字符串就加入
sb.add(str.toString());
}
System.out.println("排序前的字符串list为:");
for (String string : sb) {
System.out.println(string);
}
System.out.println("排序后的字符串list为:");
Collections.sort(sb);
for (String string : sb) {
System.out.println(string);
}
}
排序应该是按照ASCII码表上的顺序进行排列的,可以在百度上搜一下ASCII码表,优先级就出来了
Java入门第三季
409770 学习 · 4388 问题
相似问题