所以目前我已设法使用以下代码创建一个getter方法
public int getDivisor() {
return this.divisor;
}
那将返回2.
我一直在为我的项目创建一个setter方法。问题是:为divisor编写一个公共setter方法,它将除数设置为参数的值。它不能是0,真的被困在这个问题上。有人可以帮忙吗?非常感谢。
我现在添加了以下方法
public void setValue(int number) {
if(number == 0)
this.divisor = number;
}
用于设置者消息。
输入消息divisor.SetValue();
后,它返回错误找不到符号 - 方法SetValue()。我做错了吗?
答案 0 :(得分:1)
setValue()
和SetValue()
是两回事。名称区分大小写。这就是为什么编译器找不到setValue()
因为你键入SetValue()
!
答案 1 :(得分:0)
只需在代码
上使用!=
运算符,这意味着不等于
只是做:
public void setValue(int number) {
if (number != 0)
this.divisor = number;
}
}
这将检查给定的值是否不等于0,然后将继续将除数设置为数字。
答案 2 :(得分:0)
首先,固定方法名称,设置器应包含类似于setDivisor()的变量名称
第二,条件错误,仅当该值为零时,您的方法才分配该值。因此应该是:if(number!= 0)
最后,除数是一个变量,如果要在类中设置值,则可以只调用setDivisor(newDivisor)方法或this.setDivisor(newDivisor)
答案 3 :(得分:-1)
setter方法只是一个方法,它将变量的值设置为通常通过void类型的方法传递的参数的值,因为您没有返回任何值
public void setValue(int value){
if(value != 0) this.divisor = value;
}
答案 4 :(得分:-1)
评论页面上的Gendarme答案帮助我解决了这个问题。
public void setValue(int number) {
if(number == 0)
this.divisor = number;
}