2017-02-02 5 views
-3

Я пытаюсь сделать переключатель, который будет проходить через код, как в Javascript, добавив «jedi ++» в конце, но он не позволит мне сделать это, чтобы какие-либо предложения о том, как я могу это сделать? Вот фрагмент кода.Новое на Java, пытающееся сделать переключатель

switch(jedi){ 
    case 1: 

    while(!input.equalsIgnoreCase("guardian") && !input.equalsIgnoreCase("sentinel") && !input.equalsIgnoreCase("consular")){ 

     System.out.println("Please enter the path followed by this Jedi."); 
     System.out.println("(Guardian, Sentinel or Consular)"); 
     } 
     registrant.setPath(input); 
     break; 

    case 2: 
      while(!input.equalsIgnoreCase("master") && !input.equalsIgnoreCase("knight") && !input.equalsIgnoreCase("padawan") 
        && !input.equalsIgnoreCase("youngling")){ 
        System.out.println("Please enter the Jedi's Rank."); 
        System.out.println("(Master, Knight, Padawan, Youngling)"); 
        input = keyboard.nextLine(); 
        } 
       } 
       registrant.setRank(input); 
     break; 
jedi++; 
} 
+1

Будьте информативным. _ «это не позволит мне сделать это», - нет. –

+0

Похоже, что во втором случае у вас есть слишком много '}'. –

+0

Извините, что статистика, которую я не смог преобразовать int в строку, не понимал, что у меня это как строка, а не целое число –

ответ

1

Вы хотите jedi ++ во всех случаях или на всякий случай 2?

Если это только для случая 2, вы могли бы сделать

case 2: 
    .... 
    jedi++; 
    break; 
case 3: 
    .... 

, если это для всех случаев, вы могли бы сделать JEDI ++ после блока переключателей.

1

Заявления могут существовать только внутри корпуса. поскольку jedi ++ не является частью случая, его ошибка бросания. Приведение инструкции increment в требуемый регистр case решит проблему.

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

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