这是一个非常简单的Java(虽然可能适用于所有编程)问题:
Math.random()返回0到1之间的数字.
如果我想返回0到100之间的整数,我会这样做:
(int) Math.floor(Math.random() * 101)
Run Code Online (Sandbox Code Playgroud)
在一百到一百之间,我会做:
(int) Math.ceil(Math.random() * 100)
Run Code Online (Sandbox Code Playgroud)
但是,如果我想获得三到五之间的数字怎么办?是否会像以下声明:
(int) Math.random() * 5 + 3
Run Code Online (Sandbox Code Playgroud)
我知道nextInt()的java.lang.util.Random.但我想学习如何做到这一点Math.random().
Random类有一个在给定范围内生成随机int的方法.例如:
Random r = new Random();
int x = r.nextInt(100);
Run Code Online (Sandbox Code Playgroud)
这将产生一个大于等于0且小于100的int数.我想用长数做同样的事.
long y = magicRandomLongGenerator(100);
Run Code Online (Sandbox Code Playgroud)
Random类只有nextLong(),但它不允许设置范围.
我想生成一个随机时间戳并为其添加一个随机增量以生成第二个时间戳.那可能吗?
如果我传递随机长值来创建时间戳,并且我想随机生成该长值,那么生成此值以在2012年给出时间戳的约束是什么?
如何在JAVA中生成特定范围内的随机日期?我已经看到如何在Java中的特定范围内生成随机整数?生成随机数的链接.在JAVA中有类似/其他种类的方式来生成随机数吗?