2016-03-30 4 views
-8

のように動作していないスイッチ:Javaは、だから私は、次のようにスイッチを使用しようとしていた初心者として期待

switch (c_a.getText()) 
    { 

     case "Customer": 
     { 
      new LoginPage().setVisible(true); 
     } 

     case "Admin": 
     { 
      new LoginPageadmin().setVisible(true); 
     } 

     default: 
     { 
      JOptionPane.showMessageDialog(this, "Please try again"); 
     } 
    } 

ここでの問題は、それが同様に、デフォルトでのJOptionPaneを切り開くということですが。私は間違って何をしていますか?

+3

スイッチの条件の間に '中断 'を追加する必要があります(デフォルトは順不同です)。 –

+1

あなたは "休憩"を取る必要があります。 – bmargulies

+1

https://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html – azurefrog

答えて

0

あなたはbreak声明

switch (c_a.getText()) { 
    case "Customer": { 
     new LoginPage().setVisible(true); 
     break; 
    } 
    case "Admin": { 
     new LoginPageadmin().setVisible(true); 
     break; 
    } 
    default: { 
     JOptionPane.showMessageDialog(this, "Please try again"); 
     break; 
    } 
} 

ソース不足している:switch声明の中でhttps://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html

1

を、あなたはbreak文、または他の追加のスイッチブロックを実行することができますを配置する必要があります。 switch文に関するJava tutorialの内容は次のとおりです。

各break文は、囲みswitch文を終了します。制御フローは、スイッチブロックの後の最初の文で継続されます。 break文が必要なのは、スイッチブロックがないとswitchブロックの文が失敗するためです。一致するcaseラベルの後のすべてのステートメントは、breakステートメントが検出されるまで、後続のcaseラベルの式に関係なく、順番に実行されます。

break;がないと、コードはここでの場合のようにスイッチブロックを「通過」することがよくあります。

関連する問題