日期:2014-05-20  浏览次数:21239 次

为什么Random这么慢?
int   num   =   10000;
                                    long   l   =   System.currentTimeMillis();

Integer   n   =   null;
for   (int   i   =   0;   i   <   num;   i++)
{
n   =   new   Integer(new   Random().nextInt(num*50));
Thread.sleep(1);
}
l   -=   System.currentTimeMillis();
System.out.println( "random: "+(-l)+ "ms ");

out:   19828ms,ji基本上一个Random花了1ms   why?



------解决方案--------------------
因为程序中Thread.sleep(1);的影响,去掉就好了,我测了一下才31ms
------解决方案--------------------
Thread.sleep(1);
目的是什么?
有什么特殊要求吗?
------解决方案--------------------
目的是将线程暂停一会。。。()里的值是暂停的时间。。

个人理解。。