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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

練習(xí)題,通過(guò)ASCII碼實(shí)現(xiàn),幫我看看有沒(méi)有哪里不對(duì),是否所有的字母和數(shù)字都包含了,謝謝!

import java.util.ArrayList;

import java.util.Collections;

import java.util.List;

import java.util.Random;


public class RandomString {


public void test(){

List<String> list=new ArrayList<String>();

Random random=new Random();

//通過(guò)for循環(huán)來(lái)設(shè)置字符串

for(int I=0;I<10;I++){

String z = "";

//隨機(jī)生成字符串的長(zhǎng)度數(shù) 1~9

int cd=random.nextInt(9)+1;

do{

//隨機(jī)生成長(zhǎng)度已定的字符串

for(int i=0;i<cd;i++){

int a;

do{

a=random.nextInt(75)+48;

}while(a>90 && a<97 || a>57 && a<65);

char b=(char)a;

z+=b;

}

}while(list.contains(z));

list.add(z);

}

System.out.println("--------排序前--------");

for (String string : list) {

System.out.print(string+",");

}

System.out.println();

System.out.println("--------排序后--------");

Collections.sort(list);

for (String string : list) {

System.out.print(string+",");

}

}

public static void main(String[] args) {

RandomString rs=new RandomString();

rs.test();

}

}


正在回答

2 回答

從運(yùn)行來(lái)看,應(yīng)該都包含在內(nèi)了,如果你擔(dān)心是不是覆蓋了所有字母和數(shù)字,那不如先創(chuàng)建一個(gè)包含了所有字母和數(shù)字的字符串,新生成的隨機(jī)字符串的字符均取自這個(gè)字符串,這樣就不用擔(dān)心了。

另外,創(chuàng)建可變的字符串變量,感覺(jué)?StringBuffer str=new StringBuffer(); 更合適一些。

這里列出另一種方法供參考:

List?<String>?strList=?new?ArrayList<String>();
		String?base="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
		Random?random=new?Random();
	????Integer?k;
	????for?(int?i=0;?i<10;i++){
	????	StringBuffer?str=new?StringBuffer();
	????	do{
	????	k=random.nextInt(10);
	????	}?while(k==0);
	????	do{
	????	for(int?j=0;j<k;j++){
	??	??????int?num=random.nextInt(base.length());
	??	??????str.append(base.charAt(num));
	??	????}
	????	}while(strList.contains(str.toString()));
	??	????strList.add(str.toString());
	????}


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

qq_之恩赫奧丶_0 提問(wèn)者

謝謝!
2016-05-17 回復(fù) 有任何疑惑可以回復(fù)我~
#2

SilenceDean

第8行應(yīng)改為k=random.nextInt(11); random.nextInt(10)取到的是[0,10),即k最大為9 字符串最多只能取到9位的長(zhǎng)度
2016-07-08 回復(fù) 有任何疑惑可以回復(fù)我~

謝了,原來(lái)Java里不是128個(gè)字符都能顯示出來(lái)的...

我把所有的128個(gè)ASCII碼轉(zhuǎn)為字符,做出來(lái)亂碼...

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

舉報(bào)

0/150
提交
取消

練習(xí)題,通過(guò)ASCII碼實(shí)現(xiàn),幫我看看有沒(méi)有哪里不對(duì),是否所有的字母和數(shù)字都包含了,謝謝!

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

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

幫助反饋 APP下載

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

公眾號(hào)

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