自己寫到的課后練習
public void testSort3(){
List<String> stringList=new ArrayList();
Random random=new Random();
for(int g=0;g<10;g++){
String b="";//每得到一次字符串并將其存入stringList后,將存放字符串的變量初始化
do{
for(int i=0;i<10;i++){
Integer k=random.nextInt(10);
String a=Integer.toString(k);
b+=a; ? //通過10次循環,得到字符串的每一位,并將其連接起來得到長度為10的字符串
}
}while(stringList.contains(b));
stringList.add(b);
System.out.println("添加了元素:"+b);
}
System.out.println("--------排序前--------");
for (String string : stringList) {
System.out.println("元素為:"+string);
}
Collections.sort(stringList);
System.out.println("--------排序后--------");
for (String string2 : stringList) {
System.out.println("元素為:"+string2);
}
}
2016-07-27
想法很奇特,受教了!
2016-07-08
這是改完的
public void testSort5(){
List<String> stringList=new ArrayList<String>();
String s="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Random random=new Random();
int k;
for(int i=0;i<10;i++){
StringBuilder str=new StringBuilder();
do{
k=random.nextInt(11); ?//確定某個元素的字符串長度
}while(k==0);
for(int j=0;j<k;j++){ ? //為某個元素的字符串進行賦值
do{
char ch=s.charAt(random.nextInt(s.length()));
str.append(ch);
}while(stringList.contains(str));
}
String ss=str.toString();
stringList.add(ss);
System.out.println("添加了元素:"+ss);
}
System.out.println("---------排序前--------");
for (String string : stringList) {
System.out.println("元素為:"+string);
}
Collections.sort(stringList);
System.out.println("--------排序后--------");
for (String string : stringList) {
System.out.println("元素為:"+string);
}
}
2016-07-07
...發現理解錯了,是生成隨機字符串
把題目看成了“每條字符串為長度10以內的隨機整數”