在前面的转盘抽奖中算法中我们有需求精确到小数点后几位的需求,今天想到了这个事情,然后上搜索引擎一看,大部分都没有给出精确的答案。下面的算法就允许我们自己来设置精确到小数点后几位的随机数了。代码如下:
double min = 0.0001;//最小值
double max = 10;//总和
int scl = 4;//小数最大位数
int pow = (int) Math.pow(10, scl);//指定小数位
double one = Math.floor((Math.random() * (max - min) + min) * pow) / pow;
够简单吧。