java抽奖思路

现在在做一个有关抽奖的活动,将我自己所做的抽奖思路书写一下

1、项目奖项的配置存储在MongoDB 配置的参数为 奖项的等级(prizeLevel)、数量(prizeNum)、奖项的名称(prizeName)以及金额(prizeMoney)以及活动的相关信息

2、抽奖活动:

  a、判断活动是否开始,结束,还是在开奖中

  b、判断抽取的奖项是否已经被抽取

  c、获取有参加资格的人员信息

  d、中奖概率的设置

  e、打乱人员信息的排序  Collections.shuffle(userList);  //l乱序

  f、进行抽奖操作(while循环):

    1、抽中奖项

    2、判断当前奖项的数量是不是为0,不为0的话 将当前奖项的数量减到0位置  为0的话 循环结束

    3、获取一个抽奖人员信息 ,并将相关的信息保存在数据库里面,并在人员信息List 减去一个人员

    4、没有中奖的话,继续循环

在抽奖的过程中 使用的时while(true)进行抽奖的循环,当奖品的数量为0的时候、抽取的数量与奖品设置的数量一样的时候、抽取的时候人员信息长度0的时候  将判断修改为while(false)结束循环 并返回数据

中奖概率与思路是参考:沧海一滴的博客文章:https://www.cnblogs.com/softidea/p/10002359.html ,感谢文章对于我的启发

posted @ 2019-07-31 10:29  一只怀揣IT梦想的蜗牛  阅读(901)  评论(0编辑  收藏  举报