学习制作java抽奖程序难不难?手把手教你快速入门

吉云

今天瞎琢磨,想搞个抽奖的小玩意儿,有时候搞活动或者年会啥的能用上。反正闲着也是闲着,就动手用Java写一个简单的。下面说说我是咋一步步弄出来的。

准备工作

你得有个想法。我的想法特简单,就是有一堆人名或者工号啥的,然后程序能随机给我蹦出来一个,这就算中奖。没啥花里胡哨的功能,就是最基本的随机抽取。

学习制作java抽奖程序难不难?手把手教你快速入门

然后就是准备家伙事儿。电脑上得有Java环境,我这儿早就装好,直接打开我的IDEA(你用别的也行,记事本都能写,就是费劲点)就开始捣鼓。

开始动手码

第一步:把参与抽奖的人弄进来

我想着得有个地方存这些人名。用啥?搞个数组?或者列表?感觉列表(`ArrayList`)方便点,加人删人都灵活。我就整个`ArrayList`,然后往里面塞名字,像这样:

  • 张三
  • 学习制作java抽奖程序难不难?手把手教你快速入门

  • 李四
  • 王五
  • 赵六
  • 还有我寄几

我就随便加几个名字进去,当做是参加抽奖的人员名单。

学习制作java抽奖程序难不难?手把手教你快速入门

第二步:随机抽一个出来

这步是关键。Java里头有现成的随机数工具,`*`这个类就能干这事。我就先创建一个`Random`对象。

然后咋抽?我想的是,先看看这个名单里总共有多少人,比如上面有5个人,编号就是0到4。我让`Random`生成一个0到4之间的随机整数,这个数就是中奖人的编号(索引)。

拿到这个随机编号后,就好办,直接用这个编号去列表里把对应位置的名字取出来,这个人就是中奖者。

第三步:把结果显示出来

抽到人,总得告诉我谁中奖。我就用最简单的`*()`,直接在控制台把中奖人的名字打印出来,比如“恭喜,中奖者是:王五”。

学习制作java抽奖程序难不难?手把手教你快速入门

跑起来看看

代码写得差不多,就得跑跑看效果。我在IDEA里直接点运行按钮。第一次跑,出来个李四。我又跑一次,出来个张三。再跑,出来个我自己。看起来每次结果都不一样,随机性好像还行,基本满足我的要求。

这只是最最简单的版本。你要是想搞复杂点,比如:

  • 防止重复中奖(抽出来一个就把他从名单里删掉)
  • 设置不同奖项(一等奖、二等奖...)
  • 学习制作java抽奖程序难不难?手把手教你快速入门

  • 给某些人加权重,让他们更容易中奖(这个稍微麻烦点,得改改随机逻辑)

这些都可以再往深做。不过我这回就是练练手,搞个基础版先跑通再说。

总结一下

用Java写个简单的抽奖程序还是挺快的。核心就是搞定参与者名单和怎么随机抽取。用到的也就是列表和随机数这些基础玩意儿。自己动手实践一遍,比光看理论强多。虽然简单,但跑起来能看到结果,还是挺有意思的。差不多就这样,一个基础的抽奖小程序就搞定。

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]