Mutator方法中的布尔值

时间:2016-11-07 03:26:51

标签: java boolean mutators

我有一个项目,我正在研究一个具有mutator和accessor方法的类。 对于我的mutator方法,我必须返回一个布尔值。 “True - 表示高度在范围内,并且Object的值已被修改。”显然是假的,如果不是的话。范围内的高度意味着它在1-10之间。

我知道如何写一个布尔值,但是我如何在mutator方法中做到这一点? 通常是,请记住我很新,我会写下以下内容:

public void setHeight(int newHeight){
    height = newHeight;
}

如何将我的布尔值放在mutator方法中,并确保高度在其适当的范围内? 我的布尔值将是:

if (height >= 1 && height <= 10) {
    System.out.println("It's perfect!");
} else {
    System.out.println("Not right!");
}

3 个答案:

答案 0 :(得分:0)

您需要创建一个if语句来检查高度是否有效:

public boolean setHeight(int height){

    if(1 <= height && 10 >= height){

        this.height = height;
        return true;

    }

    return false;

}

不需要else语句,因为该方法在运行return true;时结束,因此如果height有效,则不会执行if之后的任何语句。

this.height引用Object的height变量,而height在这种情况下引用参数定义的变量。

答案 1 :(得分:-1)

public boolean setHeight(int newHeight){
  if (height >= 10) {
    height = newHeight;
    System.out.println("It's perfect!");
    return true;
  }
System.out.println("Not right!");
return false;
}

答案 2 :(得分:-1)

您必须更改setter的返回类型:

public boolean setHeight(int newHeight) {
    if (1<=height && height<=10) {
        height = newHeight;
        return true;
    } else {
        return false;
    }
}