插入 AssignmentOperator ArrayInitializer 错误

insert AssignmentOperator ArrayInitializer error

我正在学习 java 但遇到了这个问题,我正在编写一个简单的代码,但是这个错误又出现了 有人可以帮我解决我做错了什么吗?

public String alarmClock(int day, boolean vacation) {
if (day >= 1 && day <= 5) {
  if (vacation = true) {
      return "10:00";
  }
  else (vacation = false) {return "7:00";}
 }
else {
  if (vacation = true) {
      return "off";
  }
  else (vacation = false) {return "10:00";}
 }
}

它给出的错误是-

Error:  else (vacation = false) {return "7:00";}
                      ^
Syntax error, insert "AssignmentOperator ArrayInitializer" to complete ArrayInitializerAssignement

我想要的输出是这样的 -

alarmClock(1, false) → "7:00"
alarmClock(5, false) → "7:00"
alarmClock(0, false) → "10:00"

我知道这可能很简单,但我只是 java 的新手,所以我想学习这个。

提前致谢!

在条件中使用==(比较),而不是=(赋值):

改变

if (vacation = true)

if (vacation == true)

甚至更好

    if (vacation)

除此之外,else (vacation = false) 是无效语法,您也不需要它。直接写 else.

if (day >= 1 && day <= 5) {
  if (vacation) {
      return "10:00";
  } else {
      return "7:00";
  }
} else {
  if (vacation) {
      return "off";
  } else {
      return "10:00";
  }
}