-1

当我尝试这段代码时:

public boolean eligibleForBonus(double salary) {
    if(salary >=40000) {
        return true;
    }
    else {
        return false;
    }
    }   

@Override
public String toString() {
    if (eligibleForBonus()){
    return (code I want to return);
    }
    else {
    return (code I want to return);
    }
    }

我在 (eligibleForBonus()) 上收到一个错误,上面写着“Employee(类)类型中的方法 qualifiedForBonus(double) 不适用于参数 ()”。我是编程新手,我已经尝试了所有我能想到的东西,但我做错了 - 任何帮助都将不胜感激!谢谢 :)

4

5 回答 5

5

eligibleForBonus()需要double您在此处声明的类型的参数

public boolean eligibleForBonus(double salary) {}
于 2013-10-17T16:44:12.980 回答
0

你必须给出eligibleForBonus一个双重论点

例如

public String toString() {
    if (eligibleForBonus(100.0)){
    return (code I want to return);
    }
    else {
    return (code I want to return);
    }
    }
于 2013-10-17T16:44:32.740 回答
0

您的方法eligibleForBonus(double salary)需要一个 double 类型的参数,但在此 if (eligibleForBonus()){您只是在没有任何参数的情况下调用此方法您需要在此传递一个参数,例如if (eligibleForBonus(1.2)){

于 2013-10-17T16:47:09.097 回答
0

您的方法eligibleForBonus需要一个参数(double salary)。在您的 toString 方法中,您正在调用该方法而不传递任何参数:if (eligibleForBonus())。这就是为什么它的cribbing。传递一个有效参数,例如:

if (eligibleForBonus (1000.0))
于 2013-10-17T16:47:11.850 回答
0

该方法eligibleForBonus(double salary)根据工资检查奖金是否符合条件。但是当你调用这个方法时,你并没有“交出”工资,因此你会得到一个异常。如果工资是例如 2000 使用 if(elibibleForBonus(2000))

于 2013-10-17T16:48:17.370 回答