xem*_*xem 1 java boolean class object boolean-operations
我对Java比较陌生.我得到了一个赋值,我必须输出一个显示其属性的类的对象,并打开它.对象是一个'粉丝',我可以打印我创建的FAB类的所有属性,除非打开它.这是我的一些代码
public class Fan {
private boolean on = false;
public Fan ( int newSpeed, boolean newOn, double newRadius, String newColor ) {
setSpeed(newSpeed);
setRadius(newRadius);
setColor(newColor);
}
public boolean isOn () {
return true;
}
public void setOn ( boolean newOn ) {
if (on) {
on=newOn;
}
}
public String toString ( ) {
{
if (on)
{
return "Fan is Turned on";
}
else
{
return "Fan is Turned off";
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是粉丝课的对象
public class TestApplication {
public static void main (String[] args) {
Fan testfan1 = new Fan(5, false, 10, "blue");
System.out.println(testfan1.getSpeed() + " " + testfan1.getColor() + " "
+ testfan1.getRadius() + " " + testfan1.isOn());
}
}
Run Code Online (Sandbox Code Playgroud)
尝试了很多方法,但我得到输出'true'而不是粉丝打开
我看到一些错误:
您正在使用=运算符在if语句中进行比较.该=操作是Java中的赋值运算符.使用==比较.
if (on == true)
Run Code Online (Sandbox Code Playgroud)
如果您要比较的是布尔值(这是这里的情况),只提供布尔值:
if (on)
Run Code Online (Sandbox Code Playgroud)
另外,在你的isOn方法中,你总是回来true,我想你想回来on.