欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java随机事件分发器示例

程序员文章站 2024-02-26 23:49:46
以下需求:20%的概率去执行方法a,1%的概率去执行方法b,29%的概率去执行方法c,50%的概率去执行方法d 如果用if随机数之类的语句去判断的话,可能会写的很乱,我写...

以下需求:
20%的概率去执行方法a,
1%的概率去执行方法b,
29%的概率去执行方法c,
50%的概率去执行方法d

如果用if随机数之类的语句去判断的话,可能会写的很乱,我写了一个随机分发器,可以规范该操作。使用该分发器后的代码如下:

复制代码 代码如下:

              //创建一个分发器
randomdispatcher randomdispatcher = new randomdispatcher();

//设置每种事件的概率,注意,概率之和不一定是100哦
randomdispatcher.put(20, 1);
randomdispatcher.put(1, 2);
randomdispatcher.put(29, 3);
randomdispatcher.put(50, 4);

//随机
int retindex = randomdispatcher.random();

//根据随机结果去执行不同的方法
switch (retindex) {
case 1:
 system.out.println("do method a");
 break;
case 2:
 system.out.println("do method b");
 break;
case 3:
 system.out.println("do method c");
 break;
case 4:
 system.out.println("do method d");
 break;

default:
 break;
}