java - 生成仅包含指定字符的指定长度的随机字符串(Java 中)

标签 java random password-generator

有人知道在Java中生成指定长度和字符的随机字符串的好方法吗?

例如,“length”可以是 5,“possibleChars”可以是“a,b,c,1,2,3,!”。

所以

c!a1b 有效

但是

cba16 不是。

我可以尝试从头开始编写一些东西,但我觉得这一定是生成密码、生成优惠券代码等的常见用例......

有什么想法吗?

最佳答案

你想要这样的东西吗?

Random r=new Random();

char[] possibleChars="abc123!".toCharArray();
int length=5;

char[] newPassword=new char[length];

for (int i=0; i<length;i++)
    newPassword[i]=possibleChars[r.nextInt(possibleChars.length)];

System.out.println(new String(newPassword));

关于java - 生成仅包含指定字符的指定长度的随机字符串(Java 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10923445/

相关文章:

linux - 我可以使用 openJDK 而不是 Oracle JDK 安装 RubyMine 5 吗?

java - 扫描仪 in.hasNextInt() 永远不会返回 true

java - 随 secret 码生成器(ASCII - AP 计算机科学)Java

JavaScript 密码生成器有时不包括字符选择?

python - 使用python生成8个字符的密码,包括小写、大写和数字

java - 没有找到适合 JDBC SQL 服务器的驱动程序

java - 在 gradle 中添加 abmob 依赖项后,android 应用程序崩溃

c++ - `std::random_device` 和 `std::mt19937_64` 和有什么区别?

c++随机数(Visual Studio形式)

Java随机百分比