Java:此方法必须返回类型为double [duplicate]

问题描述 投票:0回答:3

我在此代码上停留了大约一个小时,而我只是无法找到解决方案。如果有人可以帮助我,我将非常感激。预先感谢。

public double  berekenPrijs(int aantalBallen) {
    if (aantalBallen == 0) {
        return  0.80;
    }
    else if(aantalBallen == 1 ){
        return 0.80;
    }
    else if (aantalBallen <= 3 && aantalBallen >=2) {
        return 0.9 * aantalBallen * 0.80;
java methods return double
3个回答
0
投票

尝试以下操作:

public class Goovy123 {
    public static void main(String[] args) throws InterruptedException {
        System.out.println(berekenPrijs(0));
        System.out.println(berekenPrijs(1));
        System.out.println(berekenPrijs(2));
        System.out.println(berekenPrijs(3));
    }

    static public double berekenPrijs(int aantalBallen) {
        if (aantalBallen == 0) {
            return 0;
        } else if (aantalBallen == 1) {
            return 0.80;
        } else if (aantalBallen <= 3 && aantalBallen >= 2) {
            return 0.9 * aantalBallen * 0.80;
        }
        return Double.NaN;
    }
}

示例运行:

0.0
0.8
1.4400000000000002
2.16

1
投票

如果aantalBallen不是2到3之间的0、1,您的函数返回什么?


1
投票

您还需要在最后一个elseIf块之后添加return语句。

当aantalBallen不等于0,1或<= 3且> = 2时,该return语句将用于从此方法返回double。

即使所有条件都失败,在这种情况下,该方法也需要返回一个值Double。


-1
投票

我使用这种方法可以将价格设置为用户想要的冰淇淋量。因此,例如aantalBallen = 1,我需要为1球冰淇淋返还80美分。如果他们想要3个球,那么它的2.40折扣为10%

© www.soinside.com 2019 - 2024. All rights reserved.