在java中生成大于给定数直到无穷大的随机数
在Java中,我想在给定的数字和无穷大之间生成一个随机数。 我知道这种方法可以在在java中生成大于给定数直到无穷大的随机数,java,Java,在Java中,我想在给定的数字和无穷大之间生成一个随机数。 我知道这种方法可以在0和100之间生成随机数: int rand = (int) (Math.random() * 100 + (0)); 但我需要生成一个大于0直到无穷大的随机数: int rand = (int) (Math.random() * infinity + (m + 1)); 编程中没有无穷大,但可以使用基本相同的Integer.MAX_值 你可以在这里阅读:你有无限的内存来保存生成的数字吗?没有“随机正整数”(或“
0
和100
之间生成随机数:
int rand = (int) (Math.random() * 100 + (0));
但我需要生成一个大于0直到无穷大的随机数:
int rand = (int) (Math.random() * infinity + (m + 1));
编程中没有无穷大,但可以使用基本相同的Integer.MAX_值
你可以在这里阅读:你有无限的内存来保存生成的数字吗?没有“随机正整数”(或“大于100的随机整数”)的标准概念,因为在自然数集合上没有统一的概率分布。因此,您的问题没有得到充分的定义。您需要指定希望分发的内容。您不仅需要在机器的合理限制范围内工作,还需要在实用性范围内工作。使用java biginteger可以创建相当大的数字。但我必须指出,给定无穷大的上界,相当多的随机数将是不切实际的大。你能解释一下你到底想做什么吗?我们知道您没有试图创建一个无限大的随机数,因为这没有意义。我将为您生成一个随机数,并将其乘以0进行加密。那么你只需要把它除以0,你应该在你的代码中有它,不是吗?我不认为
2^31-1
与无穷大“基本相同”,即使在编程中也是如此。2^31-1是程序中可以编码的最大整数,如果你不能再编码2^31-1以外的整数,你可以考虑2 ^ 31—1无穷大或无限大数,如果你喜欢<代码> 2 ^ 31 -1 < /代码>是最大的32位有符号整数。使用biginger
可以表示大得多的整数。这也是一种可能性,我会选择其中一种。因为你不可能真的有无限的内存来保存无限的数字