2017-02-01 17 views
-7

У меня проблема с попыткой добавить else в Eclipse. Я считаю, что делаю это правильно, поскольку я проверяю любую ошибку, которую я, возможно, сделал. Я также следовал инструкциям моего преподавателя в классе, но у нас все были с той же проблемой, пытаясь добавить заявление else. Я помню, как он работал в первый раз, что странно. Ошибка, которую я получаю: «Синтаксическая ошибка на токене« else ». Ожидается. То, что я пытаюсь сделать, - дополнительное назначение кредита, когда мы создаем программу, в которую пользователь вводит месяц, а затем программа сообщает, сколько дней в этом месяце. Вот мой код в настоящее время. Извините, что на картинке я просто позволю своему другу заимствовать мой USB-накопитель, думая, что Eclipse автоматически создает рабочее пространство на рабочем столе, если я отключу флешку и кое-что что-то кодирую. ...Как добавить инструкцию else (или else if) в Eclipse?

https://s27.postimg.org/7h8c11eyb/myjavacode.png

import java.util.Scanner; 

public class HowManyDaysInYourMonth { 

    public static void main(String[] args) { 
     System.out.println("Please enter the month:"); 
     Scanner myScanner=new Scanner(System.in); 
     String month; 
     month=myScanner.next(); 
     if(month=="January"||month=="january"||month=="March"||month=="march"||month=="May"||month=="may"||month=="July"||month=="july"||month=="August"||month=="august"||month=="October"||month=="october"||month=="December"||month=="december");{ 
      System.out.println(month+" has 31 days.");} 
     else if (month=="February"||month=="february");{ 
      System.out.println(month+" has 29 days, but on leap years, February has 28 days."); 
     }else if (month=="April"||month=="april"||month=="June"||month=="june"||month=="September"||month=="september"||month=="November"||month=="november");{ 
      System.out.println(month+" has only 30 days."); 
     } 
     myScanner.close(); 
    } 
} 
+3

Почему в скобках есть круглые скобки? Конечно, вы не имели в виду, если? – Li357

+0

Возможный дубликат [Как сравнить строки в Java?] (Http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java) – AntonH

+0

@AntonH Не совсем проблема в сообщение, но еще одна огромная проблема – Li357

ответ

0

Это должно работать:

import java.util.Scanner; 

public final class Main { 
    public static final void main(final String[] args) { 
     System.out.println("Please enter the month:"); 

     final Scanner scanner = new Scanner(System.in); 
     String month = scanner.next(); 

     if (month == "January" || month == "january" || month == "March" || month == "march" || month == "May" 
       || month == "may" || month == "July" || month == "july" || month == "August" || month == "august" 
       || month == "October" || month == "october" || month == "December" || month == "december") { 
      System.out.println(month + " has 31 days."); 
     } else if (month == "February" || month == "february") { 
      System.out.println(month + " has 29 days, but on leap years, February has 28 days."); 
     } else if (month == "April" || month == "april" || month == "June" || month == "june" || month == "September" 
       || month == "september" || month == "November" || month == "november") { 
      System.out.println(month + " has only 30 days."); 
     } 

     scanner.close(); 
    } 
} 

В Java Условный еще-заявление выглядит следующим образом:

if(condition) { 
    [...] 
} else { 
    [...] 
} 

Кроме того, имена переменных, как «myScanner» не должны быть использованы, потому что «мой» не описывает соответствующую информацию в этом но делает код менее читаемым.

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

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