读书人

java 生成若干位随机数的有关问题

发布时间: 2012-09-10 22:20:12 作者: rapoo

java 生成若干位随机数的问题

? ? 在一次编程的过程中偶然碰到一个小问题,就是需要生成一个4位数的随机数,如果是一个不到4位大的数字,前面可以加0来显示。因为要求最后是一个4位的整数,不带小数点。当时就想到了几个办法:

一、 用Math.random()

当时就这么想到,Math.random()方法不正好可以生成[0, 1)之间的数字么?如果用这个数字乘以10000不就是一个从[0, 1000)之间的数字了么? 于是当时就想到了这么一段代码:

Random rnd = new Random();public String getRandomNumber(int digCount) {    StringBuilder sb = new StringBuilder(digCount);    for(int i=0; i < digCount; i++)        sb.append((char)('0' + rnd.nextInt(10)));    return sb.toString();}

? ? ?我们用到了java.util.Random这个类。nextInt(n)这个方法可以返回一个从0到n的随机数。

? ? 通过这个办法,我们可以生成一个若干位的随机数,然后用一个字符串的方式来表示。当数字足够长的时候,也不用担心会溢出。

读书人网 >编程

热点推荐