错误的操作数类型-第一种类型-java.util.Random,第二种类型-int

错误的操作数类型-第一种类型-java.util.Random,第二种类型-int,java,Java,我试图创建一个程序,让老虎机随机取一个int,用一些if语句对一系列数字进行处理,并根据随机整数所包含的数字范围返回一定数量的现金 问题源于if语句,if(s>=0&&s=0&&s=6&&s

我试图创建一个程序,让老虎机随机取一个
int
,用一些
if
语句对一系列数字进行处理,并根据随机整数所包含的数字范围返回一定数量的现金

问题源于
if
语句,
if(s>=0&&s<6)
,其中我将随机对象与
int
进行比较

/* This method determines the amount of pay off when there is a winner
 * @ return the amount of payoff
 */
private int getPayOff()
{
    Random s = new Random();
    s.nextInt(11);

    Random rr = new Random();
    rr.nextInt(10 + 1);
    Random rrr = new Random();
    rrr.nextInt(90 + 11);
    if(s >= 0 && s < 6 )
        return rr;
    else if(s >= 6 && s < 9)
        return rrr;
    return 10000;

}
/*此方法确定有赢家时的付款金额
*@返回支付金额
*/
私有int getPayOff()
{
随机s=新随机();
s、 耐信(11);
随机rr=新随机();
rr.nextInt(10+1);
随机rrr=新随机();
nextInt注册登记(90+11);
如果(s>=0&&s<6)
返回rr;
否则,如果(s>=6&&s<9)
返回rrr;
返回10000;
}

如果我理解您的问题,您希望生成两个1到10范围内的值,以及一个11到100范围内的值。您只需要一个
Random
(用于随机值的生成器),然后可以使用它生成三个随机值(实际上,两个随机值取决于代码路径)。此外,您还可以简化
if
链,以消除不可能的条件。大概

private final Random rand = new Random(); // <-- one.
private int getPayOff() {
    int s = 1 + rand.nextInt(10); // <-- [1,10]
    if (s < 6) {
        return 1 + rand.nextInt(10); // <-- [1,10]
    } else if (s < 9) {
        return 11 + rand.nextInt(90); // <-- [11,100]
    }
    return 10000;
}

private final Random rand=new Random();// 如果我理解您的问题,您希望生成两个范围为11到10的值和一个范围为11到100的值。您只需要一个
Random
(用于随机值的生成器),然后可以使用它生成三个随机值(实际上,两个随机值取决于代码路径)。此外,您还可以简化
if
链,以消除不可能的条件。大概

private final Random rand = new Random(); // <-- one.
private int getPayOff() {
    int s = 1 + rand.nextInt(10); // <-- [1,10]
    if (s < 6) {
        return 1 + rand.nextInt(10); // <-- [1,10]
    } else if (s < 9) {
        return 11 + rand.nextInt(90); // <-- [11,100]
    }
    return 10000;
}

private final Random rand=new Random();//不。您没有将随机
int
s存储在任何位置。如果指定返回
int
,则不能返回
Random
。为什么有三个随机数?我有三个随机数,第一个是得到一个介于1和10之间的数字,第二个是得到一个介于1和10之间的支付值,第三个是返回一个介于11和101美元之间的支付值,我在开始的声明中声明了这一点,让我修正一下格式错误,你到底为什么要创建三个
随机
对象?第一个可以用来生成你想要的所有随机数。真的吗?在不同的范围内,ah可以只更改if语句后的值…在那里,修复格式错误No。您没有将随机
int
s存储在任何位置。如果指定返回
int
,则不能返回
Random
。为什么有三个随机数?我有三个随机数,第一个是得到一个介于1和10之间的数字,第二个是得到一个介于1和10之间的支付值,第三个是返回一个介于11和101美元之间的支付值,我在开始的声明中声明了这一点,让我修正一下格式错误,你到底为什么要创建三个
随机
对象?第一个可以用来生成你想要的所有随机数。真的吗?在不同的范围内,ah可以只更改if语句后的值…在这里,修复格式错误,好吧,但是这怎么不会运行到错误的操作数类型,我的代码会,谢谢你的时间好吧,但是这怎么不会运行到错误的操作数类型,我的代码会,谢谢你的时间