为什么我的程序有时候能运行出来有时候就死循环了!我是新手。。
public class CollectionTest {
public void testString() {
String str = "QWERTYUIOPASDFGHJKLZXCVBNMqwerty" +
"uiopasdfghjklzxcvbnm1234567890";
List<String> stringList = new ArrayList<String>();
Random random = new Random();
Integer k;
String m;
for (int i = 0; i < 10; i++) {
String s = "";
do {
k = random.nextInt(10);
for (int j = 0; j < k; j++) {
//生成字符串str长度范围的随机数
int r = random.nextInt(str.length());
//取一个字符
m = str.substring(r, r + 1);
//这种写法不知道规不规范。。
s = s + m;
}
}
//有时候会生成空字符串所以我加了个条件
while (stringList.contains(s) || stringList.contains(""));
stringList.add(s);
}
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);
}
}
public static void main(String[] args) {
CollectionTest ct = new CollectionTest();
ct.testString();
}
}