可能重复:
Generating random BigDecimal value from given range创建BigDecimale随机
如何创建BigDecimal
0和1之间随机很多的价值观呢?
可能重复:
Generating random BigDecimal value from given range创建BigDecimale随机
如何创建BigDecimal
0和1之间随机很多的价值观呢?
看看this JavaDoc的。一旦你有一个a lot
的数值,做一个简单的for循环,并使用Random
类初始化随机double值。
'Random'只返回'flot','long','double' ...但不'BigDecimal' – Mehdi
可惜的是,我们不会强迫谁downvote离开某种评论... – npinti
的人@ user15992听起来好像花了几分钟时间浏览BigDecimal类的javadoc。 BigDecimal有几个构造函数,其中一些将双精度作为参数。 – mcfinnigan
试试这个代码
class BigDecRand {
public static void main(String[] args) {
String range = args[0];
BigDecimal max = new BigDecimal(range + ".0");
BigDecimal randFromDouble = new BigDecimal(Math.random());
BigDecimal actualRandomDec = randFromDouble.divide(max,BigDecimal.ROUND_DOWN);
BigInteger actualRandom = actualRandomDec.toBigInteger();
}
}
更多细节
从类似的问题复制代码,并假装它是你的也许不是很有礼貌?除此之外,如果海报真的想要一个BigDecimal,我会假设他需要更高的精度,这个答案会给他什么。 – jarnbjo
http://stackoverflow.com/questions/5023421/从给定范围生成random-bigdecimal-value- –
'BigDecimal.valueOf(Math.random())'? –
有一个非常准确的随机数是否有意义? –