我需要在 Java 中生成一个恰好 6 位数字的随机数。我知道我可以在随机发生器上循环 6 次,但是在标准 Java SE 中还有其他方法可以做到这一点吗?
要生成 6 位数字:
Use Random http://download.oracle.com/javase/6/docs/api/java/util/Random.html and nextInt http://download.oracle.com/javase/6/docs/api/java/util/Random.html#nextInt%28int%29如下:
Random rnd = new Random();
int n = 100000 + rnd.nextInt(900000);
注意n
永远不会是 7 位数字 (1000000),因为nextInt(900000)
最多可以返回899999
.
那么如何随机化最后 5 个字符(可以是 A-Z 或 0-9)?
这是一个简单的解决方案:
// Generate random id, for example 283952-V8M32
char[] chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".toCharArray();
Random rnd = new Random();
StringBuilder sb = new StringBuilder((100000 + rnd.nextInt(900000)) + "-");
for (int i = 0; i < 5; i++)
sb.append(chars[rnd.nextInt(chars.length)]);
return sb.toString();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)