Следующие требования:
20% вероятность выполнения метода A,
1% вероятность выполнения метода B,
29% вероятность выполнения метода C,
50% вероятность выполнения метода D
Если вы используете заявления, такие как, если случайные числа для суждения, это может быть очень грязным. Код после использования этого дистрибьютора выглядит следующим образом:
Кода -копия выглядит следующим образом:
// Создать дистрибьютора
RandomDispatcher randomDispatcher = new RandomDispatcher ();
// Установите вероятность каждого события, обратите внимание, что сумма вероятности не обязательно означает, что сумма вероятности составляет 100
randomDispatcher.put (20, 1);
randomDispatcher.put (1, 2);
randomDispatcher.put (29, 3);
randomDispatcher.put (50, 4);
//случайный
int relindex = randomDispatcher.random ();
// выполнять разные методы в соответствии со случайными результатами
Switch (retindex) {
Случай 1:
System.out.println ("Do Method A");
перерыв;
Случай 2:
System.out.println ("Do Method B");
перерыв;
Случай 3:
System.out.println ("Do Method C");
перерыв;
Случай 4:
System.out.println ("Do Method D");
перерыв;
по умолчанию:
перерыв;
}