1、先写定义一个表示概率的数组 ratio,这个数组最多可以存 100 个数字,每个数字的值不能重复,范围是 0 到 100,表示 100%。现在你的中奖率是 1%,那么就存一个数字。
创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的牡丹网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
2、生成100个对象,对象有个属性,其中10个是大奖,40个是小奖,50个是无奖。放到一个List里。每次抽中的步骤 随机生成0-List长度之间的数值 ,去取List中的相应对象,并移除这个对象。代码如下。
3、你是要JAVA可视化的 还是控制台的啊?控制台的话 你可以用循环来取中奖号,将其存入list或set里(最好是set,因为set本来就不会重复)。
1、import java.util.Random 导入Random包 Random random =new Random();int a=random.nextInt(6)+1;nextInt是产生在 0(包括)和指定值(不包括)之间的int值,所以最后加个1,就是产生1到6之间的int值。
2、public class RandomDemo { public static void main (String args[]) { Random rnd = new Random();int n = rnd.nextInt(6) + 1; // nextInt(int x) 返回 0~(x-1) 之间的随机数。
3、java.lang.Math random() 返回带正号的 double 值,该值大于等于 0.0 且小于 0。
4、和产生的随机数比较大小并提示,循环结束为猜中随机数。
5、你好:random产生的是[0,1)的小数。如果想要产生50--100之间的数字;先让它产生[0--50)之间的数字,也就是 random()*50然后在后面加上51,也就是random()*50+51;得到的就是[50--100]的整数了。
普通thread实现 :是最常见的,创建一个thread,然后让它在while循环里一直运行着,通过sleep方法来达到定时任务的效果。timertask :启动和去取消任务时可以控制,第一次执行任务时可以指定你想要的delay时间。
可以通过做监听器(在web.xml中配置监听器),之后监听器里面的方法实现TimeTask 类,之后即可实现定时效果,执行某个程序。
请参考java.util.Timer的文档 public class Timer extends Object 一种线程设施,用于安排以后在后台线程中执行的任务。可安排任务执行一次,或者定期重复执行。
我在这个方面有经验。策略如下:我来描述你的问题,你是想模拟在一定的概率下发生某件事情,但是你不知道应该怎么操作。
你的问题描述不清。如果是别的数字是均等的,那把一个单独处理,别的数字分享17/20的概率。实际上是一个映射的问题。
计时器任务应该迅速完成。如果完成某个计时器任务的时间太长,那么它会“独占”计时器的任务执行线程。