欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

浅谈java中Math.random()与java.util.random()的区别

程序员文章站 2024-03-13 09:30:57
今天突然想起来,java产生随机数的问题,上机试了一下,找到了一点区别,在这里总结一下; 直接调用math.random()是产生一个[0,1)之间的随机数, 如果用...

今天突然想起来,java产生随机数的问题,上机试了一下,找到了一点区别,在这里总结一下;

直接调用math.random()是产生一个[0,1)之间的随机数,

如果用

java.util.random random=new random();random.nextint()

这样产生一个长整型的随机数并且与上一次是一样的,如果过一会再产生就不会一样了,例如:

for (int i = 0; i < 10; i++) {
  random random=new random();
  thread.sleep(100);
  system.out.print((int)random.nextint(100)+" ");
 }

就是产生不同的随机long数了

如果想用java.util.random()产生指定范围的随机数就需要进行求模运算,进行一些处理。

同样 可以random.nextint(100)产生100以内的随机数。一般最好用nextint(范围)的,如果不是大量的运算的话,就可以用math.random了,(因为他可以运算起来慢一些,浮点之后再取整)

以上这篇浅谈java中math.random()与java.util.random()的区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。