【发布时间】:2014-12-16 13:24:15
【问题描述】:
我正在尝试生成带有百分比的随机数,如下所示:
60% 的几率生成从 70 到 100 的数字,
20% 的几率生成 50 到 70 之间的数字
等等 然后放到TextView中。但由于某种原因,我得到了一些奇怪的长十进制数字,如 0.44859123121 等,我怎样才能生成完整的数字?比如 99,80,70 等等。 这是我的代码:
Random rng = new Random();
double doubl = Math.random();
if (doubl < 0.6) {
int r1 = rng.nextInt(100 - 70) + 70;
// 60% chance
} else if (doubl < 0.65) {
int r1 = rng.nextInt(0 - 30) + 0;
// 5%
} else if (doubl < 0.80) {
// 15% chance
int r1 = rng.nextInt(30 - 50) + 30;
} else {
// 20% chance
int r1 = rng.nextInt(50 - 70) + 50;
}
result.setText(doubl+"%");
【问题讨论】: