java随机生成6位数字

代码:

//正确
int randomNum=(int)((Math.random()*9+1)*100000);
System.out.println(randomNum);

分析:
既然Math.random()是产生0.0到1.0之间的doule的随机数的,为什么不写成这样:

//错误
Math.random()*1000000

原因如下:
产生的随机数应该是0.0000…-1.00000…之间的,也就是说有时生成的随机数是0.0XXX的,此时乘以1000000,返回的位数就不对了,所以最上面的代码是正确的

感谢以下链接:
http://www.cnblogs.com/shenliang123/archive/2012/03/26/2417798.html