生成随机不相同字符串数组---java
1,实现一个方法,能够生成一个随机字符串数组,这些字母和字符串必须是不一样的,每个字符串由字母和数字组成,方法输入参数有两个 - count: 字符串数组(无默认值) - Str_length:字符串长度,默认值为10
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Scanner;
public class DemoTen {
public static void main(String[] args){
System.out.println("输入字符串长度:");
int len = new Scanner(System.in).nextInt();
HashSet list = genderStr(len);
System.out.println(list);
}
public static HashSet genderStr(int len){
//新建字符串数组
List<Object> list = new ArrayList<Object>();
//装载随机数范围
suiji(list);
//没有相同元素的集合
HashSet s1 = new HashSet();
while(true) {
//获取随机下标
int a1 = (int)(Math.random()*list.size());
//把获取到的随机元素添加到set集合中
s1.add(list.get(a1));
//判断长度是否相等
if(s1.size()==len) {
return s1;
}
}
}
private static void suiji(List<Object> list) {
for (char i = 'a';i <= 'z';i++) {
list.add(i);
}
for(char i ='A';i<='Z';i++) {
list.add(i);
}
for(char i = '0';i<='9';i++) {
list.add(i);
}
}
}