插入AssignmentOperator ArrayInitializer错误

时间:2015-04-21 09:37:30

标签: java assignment-operator array-initialization

我正在学习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的新手,所以我想学习这个。

提前致谢!

1 个答案:

答案 0 :(得分:3)

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

更改

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";
  }
}