问题描述
从候选手机号码里随机选取号码显示在屏幕上作为获奖手机号。此题训练多线程操作。描述提示和要求:提示和要求①候选号码可以保存在数组中,也可以保存在数据库中。②抽奖人点击开始按钮时,号码开始翻动,点击停止按钮时,显示的号码即为获奖号码。③为保证公平,应该使每个号码被选中的几率相同。
解决方案
解决方案二:
网上以前看到很多。搜搜去吧。
解决方案三:
引用1楼rui888的回复:
网上以前看到很多。搜搜去吧。
没有找到啊--要不然也不会这样了,自己做的我自己都看晕了
解决方案四:
解决方案五:
可以用HashMap来实现一下,把号码保存在HashMap中,key就设置为自增的,然后用随机函数得出key的值(仅供参考哈)
解决方案六:
Random,这个会吧。再就是在数据中如何取数据了。如果是数据库,可以按手机号排序,然后伪代码:limitrandom.nextInt(count(*)),1。如果是自己内存,则最好用ArrayList.remove(random.nextInt(size()));
解决方案七:
引用5楼chouy的回复:
Random,这个会吧。再就是在数据中如何取数据了。如果是数据库,可以按手机号排序,然后伪代码:limitrandom.nextInt(count(*)),1。如果是自己内存,则最好用ArrayList.remove(random.nextInt(size()));
数据库那个要把取出来的手机号保存一下,取下一个时进行比对是否已经重复取了,重复的话重取。
解决方案八:
可以用HashMap来实现一下
时间: 2024-08-30 00:57:37