81,095
社区成员
发帖
与我相关
我的任务
分享
import java.util.Random;
public class RandomTest {
private static Random RANDOM = new Random();
public static void main(String[] args) {
int[][] array = new int[][] { { 10, 0 }, { 15, 0 }, { 35, 0 }, { 6, 0 },
{ 30, 0 }, { 4, 0 } };
for (int i = 0; i < 10000; i++) {// 测试10000次
setFirst(array);
}
for (int i = 0; i < array.length; i++) {//指定的概率-实际次数
System.out.println(array[i][0] + " " + array[i][1]);
}
}
private static void setFirst(int[][] array) {
int begin = 0;
int r = RANDOM.nextInt(100);
for (int i = 0; i < array.length; i++) {
if (r >= begin && r < begin + array[i][0]) {//判断区间
array[i][1] = array[i][1] + 1;//设为第一行,次数加1
break;
} else {
begin += array[i][0];
}
}
}
}