您的位置:首页 > 编程语言 > Java开发

java抽奖算法

2016-11-24 09:34 106 查看
项目用到了抽奖,参照了csdn上的一篇文章,经过统计,发现概率不是很准确,经过改进,得到了比较好的算法。

// 分别为一、二、三、四等将的奖品数量,最后一个为未中奖的数量。
private static final Integer[] lotteryList = {5, 10, 20, 40, 100};

private int getSum() {
int sum = 0;
for (int v : lotteryList) {
sum += v;
}
return sum;
}

private int getLotteryLevel() {
Random random = new Random(System.nanoTime());
int sum = getSum();
int randNum = Math.abs(random.nextInt()) % sum;
for(int i=0;i
经过测试,算法得到的比例跟奖品比例接近
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: