亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

自己寫到的課后練習

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);

}

}


正在回答

3 回答

想法很奇特,受教了!

0 回復 有任何疑惑可以回復我~

這是改完的

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);

}

}


0 回復 有任何疑惑可以回復我~
#1

閏冬秋拾

思路很像~一開始運行的時候是不是有的元素只有一個空格,納悶很久,忘記k可能是0了,然后就寫了random(9)+1,這個do-while好像更合理一些!
2016-08-10 回復 有任何疑惑可以回復我~

...發現理解錯了,是生成隨機字符串

把題目看成了“每條字符串為長度10以內的隨機整數”

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Java入門第三季
  • 參與學習       409767    人
  • 解答問題       4543    個

Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧

進入課程

自己寫到的課后練習

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號