第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

幫忙看看代碼哪里錯了?

public?void?test2(){
		List<String>?StringList=new?ArrayList<String>();
		Random?random=new?Random();
		char?[]?charArray=("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ").toCharArray();
		
		for(int?j=0;j<10;j++){
		StringBuilder?sb=new?StringBuilder();
		do{
		for(int?i=0;i<random.nextInt(10)+1;i++){
			sb.append(charArray[random.nextInt(62)]);
		}
		StringList.add(sb.toString());
		}
		while(StringList.contains(sb.toString()));
		}
		System.out.println("*********排序前*********");
		for?(String?string?:?StringList)?{
			System.out.println(string);
		}
		System.out.println("********排序后***********");
		Collections.sort(StringList);
		for?(String?string?:?StringList)?{
			System.out.println(string);
		}
	}


正在回答

4 回答

12行不對,應(yīng)該放到14行的后面

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

lucitas 提問者

12行放到14行的后面的話 while里面就判斷不了集合里面是否contain那個字符串了,能不能說的詳細(xì)點(diǎn)呢,謝謝了
2016-03-09 回復(fù) 有任何疑惑可以回復(fù)我~
#2

lucitas 提問者

非常感謝!
2016-03-09 回復(fù) 有任何疑惑可以回復(fù)我~

內(nèi)層for循環(huán)好像不對。??纯次覍懙陌?/p>

public class RandomStr {
?? ?
?? ?public List<String> list = new ArrayList<String>();
?? ?String str="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
?? ?
?? ?Random random=new Random();
?? ?
?? ?public static void main(String[] args) {
?? ??? ?RandomStr rm = new RandomStr();
?? ??? ?rm.sortStr(rm.addStr());
?? ?}
?? ?//生成字符串集合
?? ??? ?List<String> addStr(){
?? ??? ??? ?for(int i=0;i<10;i++){
?? ??? ??? ??? ?StringBuilder sb = new StringBuilder();
?? ??? ??? ??? ?int tmp = 0;
?? ??? ??? ??? ?char ch;
?? ??? ??? ??? ?do{
?? ??? ??? ??? ?tmp = random.nextInt(10);
?? ??? ??? ??? ?}while(tmp==0);
?? ??? ??? ??? ?for(int j=0;j<tmp;j++){
?? ??? ??? ??? ??? ?do{
?? ??? ??? ??? ??? ??? ?ch = str.charAt(random.nextInt(str.length()));
?? ??? ??? ??? ?}while(list.contains(sb));
?? ??? ??? ??? ??? ?sb.append(ch);
?? ??? ??? ??? ?}
?? ??? ??? ??? ?list.add(sb.toString());
?? ??? ??? ?}
?? ??? ??? ?return list;
?? ??? ??? ?
?? ??? ?}
?? ?
?? ?//排序字符串集合
?? ?void sortStr(List<String> list){
?? ??? ?System.out.println("=====排序前的順序=====");
?? ??? ?for(String str:list){
?? ??? ??? ?System.out.print(str+"-");
?? ??? ??? ?}
?? ??? ?Collections.sort(list);
?? ??? ?System.out.println();
?? ??? ?System.out.println("=====排序后的順序=====");
?? ??? ?for(String str:list){
?? ??? ?System.out.print(str+"-");
?? ??? ?}
?? ?}
?? ?
}

0 回復(fù) 有任何疑惑可以回復(fù)我~

你這個do...while的程序,當(dāng)集合里面含有某個相等的字符串的時候才會往集合加入字符串對象,你看看是不是?

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

lucitas 提問者

非常感謝?。?!看懂了你的意思了,那我想再問一下 我把12行的錯誤改了后,在do的最后面要把sb清空呢?
2016-03-09 回復(fù) 有任何疑惑可以回復(fù)我~

你還是先看看do...while語句吧,這個程序的執(zhí)行過程你還沒有弄明白

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

幫忙看看代碼哪里錯了?

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號