java简单抽奖程序代码,java编写抽奖程序
目录
一、题目描述二、解题思路三、代码详解四、优化抽奖算法解题思路代码详解
一、题目描述
题目: 小虚竹为了给粉丝送福利,决定在参与学习打卡活动的粉丝中抽一位幸运粉丝,送份小礼物。为了公平,要保证抽奖过程是随机的。
二、解题思路
1、把参与的人员加到集合中
2、使用随意对象获取随机数
3、把随机数当下标,获取集合中的幸运用户
三、代码详解
public class basics 28 { public static void main(String[]args){ ListString luckUserNames=getLuckUserNames();Random Random=new Random();int luck num=随机。nextint(6);System.out.println(幸运的未来大佬是:幸运用户名。get(运气num));}私有静态ListString getLuckUserNames(){ ListString luckUserNames=new ArrayList string();luckUserNames.add(李慢慢_);卢库瑟纳斯。添加(重试-);幸运用户名。add( team _ dog );卢库瑟纳斯。add( Jasonakeke );luckUserNames.add(学好英语字母表中第三个字母语言的小王同学);luckUserNames.add(Ara~追着风跑);返回luckUserNames}}
四、优化抽奖算法
解题思路
随机次数太少,需要优化
需要列出所有人随机命中的次数,显示出来,比较公开公平
代码详解
公共类luck draw { public static void main(String[]args){ ListString luckUserNames=getLuckUserNames();Random Random=new Random();//key:luckNum,value:count MapInteger,Integer luck nummap=new hashmap Integer,Integer();for(int I=0;i 100I){ int luck num=random。nextint(4);整数计数=运气数字地图。get(运气num);if(count==null){ count=0;}计数;luckNumMap.put(luckNum,count);} Integer maxLuckNum=0;整数maxCount=0;for(整数luck num : lucknummap。keyset()){ if(maxcountlucknummap。get(luck num)){ maxCount=luck nummap。get(运气num);maxLuckNum=luckNum}系统。出去。println(幸运用户名。get(幸运数字)同学的幸运值:幸运数字地图。get(运气num));} System.out.println(本周学习打卡积分第一且是幸运的未来大佬是:幸运用户名。get(maxLuckNum));}私有静态ListString getLuckUserNames(){ ListString luckUserNames=new ArrayList string();luckUserNames.add(学好英语字母表中第三个字母语言的小王同学);luckUserNames.add(Ara~追着风跑);luckUserNames.add(李慢慢_);卢库瑟纳斯。add( Jasonakeke );返回luckUserNames}}
到此这篇关于爪哇实现抽奖算法的示例代码的文章就介绍到这了,更多相关爪哇抽奖算法内容请搜索盛行信息技术以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行它!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。