2015-04-21 3 views
4

Я изучаю Java, но придерживался этой проблемы, я пишу простой код, но эта ошибка снова возникает Может ли кто-нибудь помочь мне с тем, что я делаю неправильно?insert AssignmentOperator Ошибка ArrayInitializer

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

ошибка, при которой он дает

IS-
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 поэтому я хочу это узнать.

Заранее благодарен!

ответ

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

Да я знаю, что еще (отпуск = ложь) является недействительным, я попробовал только с другой, в этом случае из не правильно .. – shivam

+0

Спасибо (отпуск == верно) работал, удивлен, что это было так просто !! – shivam

+0

@ Добро пожаловать. – Eran

 Смежные вопросы

  • Нет связанных вопросов^_^