產生長度爲10以內隨機整數的隨機字符串(java)
這個題目有兩個難點,第一就是怎樣產生隨機字符串,第二是怎麼讓隨機字符串的長度爲10以內隨機整數。
解決第一個問題,產生隨機字符串
public String getRandomString(int length){
//定義組成隨機字符串的所有字符
String str="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Random random=new Random();
StringBuffer sb=new StringBuffer();
for(int i=0;i<length;i++){
//產生62以內的隨機數,因爲組成隨機字符串的字符有62個
int number=random.nextInt(62);
//將str的第number個字符加到sb的末尾
sb.append(str.charAt(number));
}
return sb.toString();
}
解決第二個問題,讓隨機字符串的長度爲10以內隨機整數
public void getRandomLengthString(){
//用一個String泛型的List來存放10個長度爲10以內的隨機整數的隨機字符串
List<String> stringList=new ArrayList<String>();
Random random=new Random();
int k;
for(int i=0;i<10;i++){
//產生10以內的隨機整數
k=random.nextInt(10);
//當stringList中沒有該隨機產生的字符串時把字符串加入到stringList中,避免stringList中有重複的隨機字符串。
do{
str=getRandomString(k);
}while(stringList.contains(str));
stringList.add(str);
}
}