实现方法
package com.example.demo.random;
import java.security.SecureRandom;
import java.util.*;
public class RandomTest {
private static String generateWord() {
String[] beforeShuffle = new String[]{"1", "2", "3", "4", "5", "6", "7",
"8", "9", "0", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J",
"K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V",
"W", "X", "Y", "Z"};
List list1 = Arrays.asList(beforeShuffle);
Collections.shuffle(list1);
StringBuilder sb1 = new StringBuilder();
for (int i = 0; i < list1.size(); i++) {
sb1.append(list1.get(i));
}
String afterShuffle1 = sb1.toString();
List list2 = Arrays.asList(beforeShuffle);
Collections.shuffle(list2);
StringBuilder sb2 = new StringBuilder();
for (int i = 0; i < list2.size(); i++) {
sb2.append(list2.get(i));
}
String afterShuffle2 = sb2.toString();
List list3 = Arrays.asList(beforeShuffle);
Collections.shuffle(list3);
StringBuilder sb3 = new StringBuilder();
for (int i = 0; i < list3.size(); i++) {
sb3.append(list3.get(i));
}
String afterShuffle3 = sb3.toString();
List list4 = Arrays.asList(beforeShuffle);
Collections.shuffle(list4);
StringBuilder sb4 = new StringBuilder();
for (int i = 0; i < list4.size(); i++) {
sb4.append(list4.get(i));
}
String afterShuffle4 = sb4.toString();
List list5 = Arrays.asList(beforeShuffle);
Collections.shuffle(list5);
StringBuilder sb5 = new StringBuilder();
for (int i = 0; i < list5.size(); i++) {
sb5.append(list5.get(i));
}
String afterShuffle5 = sb5.toString();
Random random = new Random(100);
int randomInt1 = random.nextInt(36);
int randomInt2 = random.nextInt(36);
int randomInt3 = random.nextInt(36);
int randomInt4 = random.nextInt(36);
int randomInt5 = random.nextInt(36);
String result1 = randomInt1 == 35 ? afterShuffle1.substring(randomInt1) : afterShuffle1.substring(randomInt1, randomInt1 + 1);
String result2 = randomInt2 == 35 ? afterShuffle2.substring(randomInt2) : afterShuffle2.substring(randomInt2, randomInt2 + 1);
String result3 = randomInt3 == 35 ? afterShuffle3.substring(randomInt3) : afterShuffle3.substring(randomInt3, randomInt3 + 1);
String result4 = randomInt4 == 35 ? afterShuffle4.substring(randomInt4) : afterShuffle4.substring(randomInt4, randomInt4 + 1);
String result5 = randomInt5 == 35 ? afterShuffle5.substring(randomInt5) : afterShuffle5.substring(randomInt5, randomInt5 + 1);
String result = result1 + result2 + result3 + result4 + result5;
return result;
}
public static void main(String[] args) {
Set<String> set = new HashSet<>(1024);
for (int i = 0; i < 100000000; i++) {
set.add(generateWord());
}
System.out.println("set集合大小:" + set.size());
}
}