Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 生成带有百分比的完整随机数_Android_Random_Integer - Fatal编程技术网

Android 生成带有百分比的完整随机数

Android 生成带有百分比的完整随机数,android,random,integer,Android,Random,Integer,我尝试生成带有百分比的随机数,类似于: 有60%的机会从70到100生成数字 20%的几率生成50到70的数字 等等 然后把它放在文本视图中。但出于某种原因,我得到了一些奇怪的长十进制数字,如0.44859123121等,我如何生成完整的数字?比如99、80、70等等。 这是我的代码: Random rng = new Random(); double doubl = Math.random(); if (doubl < 0.6) {

我尝试生成带有百分比的随机数,类似于:

有60%的机会从70到100生成数字

20%的几率生成50到70的数字

等等 然后把它放在文本视图中。但出于某种原因,我得到了一些奇怪的长十进制数字,如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+"%");
Random rng=new Random();
double doubl=Math.random();
如果(doubl<0.6){
int r1=rng.nextInt(100-70)+70;
//60%的机会
}否则如果(doubl<0.65){
int r1=rng.nextInt(0-30)+0;
// 5%
}否则如果(doubl<0.80){
//15%的机会
int r1=rng.nextInt(30-50)+30;
}否则{
//20%的机会
int r1=rng.nextInt(50-70)+50;
}
result.setText(doubl+“%”);

将生成的随机整数
r1
放入结果中,而不是0到1之间的随机数
doubl

还要修复对
nextInt()
的调用,这样您就不会用负值调用它。例如
70-50
而不是
50-70