import java.security.SecureRandom;public class RandomStringGenerator {// 定义允许的字符集(大写字母和数字)private static final String ALLOWED_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";private static final SecureRandom RANDOM = new SecureRandom();/*** 生成 24 位随机字符串(大写字母和数字)* @return 24 位随机字符串*/public static String generate24CharString() {StringBuilder sb = new StringBuilder(24);for (int i = 0; i < 24; i++) {// 从 ALLOWED_CHARACTERS 中随机选取一个字符int randomIndex = RANDOM.nextInt(ALLOWED_CHARACTERS.length());char randomChar = ALLOWED_CHARACTERS.charAt(randomIndex);sb.append(randomChar);}return sb.toString();}public static void main(String[] args) {// 示例调用String randomString = generate24CharString();System.out.println("生成的 24 位随机字符串: " + randomString);}
}
方法说明
-
字符集定义
ALLOWED_CHARACTERS
包含大写字母A-Z
和数字0-9
,共 36 个字符。
-
随机数生成器
- 使用
SecureRandom
生成安全的随机数,避免伪随机性。
- 使用
-
字符串生成逻辑
- 通过循环 24 次,每次从
ALLOWED_CHARACTERS
中随机选取一个字符,拼接到StringBuilder
中。
- 通过循环 24 次,每次从
生成的 24 位随机字符串: A1B2C3D4E5F6G7H8I9J0K1L2