這兩行代碼什么是什么意思int cursor=random.nextInt(a.length()); sb.append(a.charAt(cursor));
public class CollectionTest {
/**
* @param args
*/
List<String> stringList=new ArrayList<String>();
public void testSort(){
String a="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Random random=new Random();
//String s;
for(int i=0;i<10;i++){
StringBuilder sb=new StringBuilder();
do{
sb.delete(0, sb.length());
int strlen=random.nextInt(10)+1;
//if(strlen==0)continue;
for(int k=0;k<=strlen;k++) {
int cursor=random.nextInt(a.length());
sb.append(a.charAt(cursor));
}
}while(stringList.contains(sb.toString()));
stringList.add(sb.toString());
}
System.out.println("---------排序前------------");
for(String str:stringList) {
System.out.println("序列"+str);
}
Collections.sort(stringList);
System.out.println("-----排序后----------");
for(String str:stringList) {
System.out.println("序列"+str);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
CollectionTest ec=new CollectionTest();
ec.testSort();
}
2019-08-30
這里是 三位字符。 上面打錯(cuò)了~?
2019-08-30
int cursor=random.nextInt(a.length());
這行代碼的意思是生成? 從 0 到? ?a 變量 長度? 之間的隨機(jī)數(shù)?
sb.append(a.charAt(cursor));
這行代碼的意思是? 從 a 變量中 獲取 隨機(jī)數(shù)位 的值??
比如 a = "abc"
生成的隨機(jī)數(shù) 就是 0 - 3 之間的? 假如生成 2?
那么就是 a變量中 第二位字符? 。 那么就是 c