增变器方法中的布尔值

Boolean in Mutator Method

我有一个项目,我正在其中开发一个 class,它有 mutator 和 accessor 方法。 对于我的增变器方法,我必须 return 一个布尔值。 "True - indicating the height is within range and that the Object's value has been modified." 假的,显然,如果不是。高度在范围内意味着它在 1-10 之间(含)。

我知道如何编写布尔值,但我如何在增变器方法中执行此操作? 通常,请记住我是新手,我会按照以下内容写一些东西:

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

如何将我的布尔值放在增变器方法中,并确保高度在适当的范围内? 我的布尔值类似于:

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

您必须更改 setter 的 return 类型:

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

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

public boolean setHeight(int height){

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

        this.height = height;
        return true;

    }

    return false;

}

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

this.height指的是Object的height变量,而本例中的height指的是参数定义的变量。