java转盘抽奖代码_Java 实现大转盘抽奖

packagecom.wangbo.choujiang;importjava.util.ArrayList;importjava.util.List;importjava.util.Random;/*** 大转盘抽奖

*@authorwangbo

* @date 2019-05-22 14:54:47*/

public classTest1 {public static voidmain(String[] args) {

List awardList = new ArrayList();

Award award1= newAward();

award1.setAwardName("手机");//10%

award1.setProbability(0.1);

awardList.add(award1);

Award award2= newAward();

award2.setAwardName("水杯");//20%

award2.setProbability(0.2+0.1);//概率加上上一个奖品的概率(累加)

awardList.add(award2);

Award award4= newAward();

award4.setAwardName("鼠标");//10%

award4.setProbability(0.1+0.2+0.1);

awardList.add(award4);

Award award5= newAward();

award5.setAwardName("谢谢惠顾");//60%

award5.setProbability(1d);//最后一个肯定是1

awardList.add(award5);

Random random= newRandom();int a = 0,b = 0,c = 0,d = 0;for (int i = 0; i < 10000; i++) {

Double userSelect= random.nextDouble();//0.0-1.0的double随机数(不包括1.0)

String awardName =duageAward(userSelect, awardList);//信息统计

if ("手机".equals(awardName)) {

a++;

}else if ("水杯".equals(awardName)) {

b++;

}else if ("鼠标".equals(awardName)) {

c++;

}else if ("谢谢惠顾".equals(awardName)){

d++;

}

}

System.out.println("手机 " + a + " 次");

System.out.println("水杯 " + b + " 次");

System.out.println("鼠标 " + c + " 次");

System.out.println("谢谢惠顾 " + d + " 次");

}/*** 选奖品

*@paramuserSelect

*@paramawardList

*@return

*/

public static String duageAward(Double userSelect, ListawardList){for(Award award : awardList) {if(userSelect

}

}return null;

}

}classAward{privateString awardName;privateDouble probability;publicString getAwardName() {returnawardName;

}publicDouble getProbability() {returnprobability;

}public voidsetAwardName(String awardName) {this.awardName =awardName;

}public voidsetProbability(Double probability) {this.probability =probability;

}

}

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值