我试图得到一个大于最小值的随机数。有没有办法做到这一点?
执行rand(min..max)
会给出一个范围内的随机数(min
< number
< max
,但我不想指定最大值。< / p>
答案 0 :(得分:3)
在计算中没有无限的东西(除非你自己实现一个BigNum类,在这种情况下你仍然受到你的内存量的限制)。在这种情况下,我怀疑你需要的是生成一个足够大的随机数&#34;。试试rand(min..(2**32-1))
。
答案 1 :(得分:1)
如果您只想生成一个高随机最大值,可以调用:
Random.new_seed
您也可以将其存储为常量,并在您的rand调用中使用它:
MAX_RANDOM = Random.new_seed
然后做:
rand(min..MAX_RANDOM)
但如果您要这样做,您也可以自己定义常量:
MAX_RANDOM = 9999999999999
随机整数必须有一个最大值,因为正如@WimHollebrandse所说,整数范围被绑定到整数数据类型,该数据类型本身具有最大范围。