2017-02-02 9 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

2番目のケースでは1つの '}'が多すぎるようです。 –

+0

残念ですが、intを文字列に変換できなかったという統計は、文字列であり整数ではないことを認識しませんでした –

答えて

1

すべてのケースでjedi ++にしたいのですか?

それはケース2のためだけなら、あなたは

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

を行うことができ、それはすべてのケースのためだ場合は、スイッチブロックの後にジェダイ++を行うことができます。

1

ステートメントはケース内にのみ存在できます。 jedi ++はケースの一部ではないため、そのスローエラーです。インクリメンタルステートメントを必要なケースステートメントの下に置くと、問題が解決されます。

関連する問題