首页 > 编程 > Java > 正文

java随机事件分发器示例

2019-11-26 15:35:30
字体:
来源:转载
供稿:网友

以下需求:
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;
}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表