如何在Java中生成随机Char值?我正在创建一个随机密码生成器

时间:2013-10-06 20:52:42

标签: java random

我正在java中创建一个随机密码生成器,需要一些帮助我如何在程序中生成随机char值。有任何想法吗?我正在使用菜单系统来显示不同类型的密码,以生成小写,大写等。

任何建议都会有所帮助。

谢谢!

2 个答案:

答案 0 :(得分:2)

Random r = new Random();

String alphabet = "123xyz";

// Prints 50 random characters from alphabet
for (int i = 0; i < 50; i++) 
{
    System.out.println(alphabet.charAt(r.nextInt(alphabet.length())));
} 

不是打印你的字符,而是将它们添加到StringBuilder,并且你有随机密码。

(Source)

答案 1 :(得分:-1)

这是另一种解决方案:

    public int genRandomNumber(int min, int max)
    {
        return new Random().nextInt((max - min) + 1) + min;
    }

    public String genRandomPassword(int length)
    {
        String pass = "";

        for (int i = 0; i < length; i++)
        {
            pass += this.genRandomNumber(0x61, 0x7A);//min and max are ASCII char values.
        }

        return pass;
    }