2016-03-30 19 views
-8

Yani şöyle anahtarı kullanmaya çalışan bir acemi olarak: Java çalışmıyor Anahtarı

switch (c_a.getText()) 
    { 

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

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

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

burada sorun yanı varsayılan JOptionPane açılıyor olmasına rağmen

. Neyi yanlış yapıyorum?

+3

Anahtar koşullarınız arasında 'break' eklemeniz gerekir (varsayılan değer düşecektir). –

+1

Bir "mola" almanız gerekiyor. – bmargulies

+1

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

cevap

0

Eğer break deyimi

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

kaynağını kaçırıyoruz: Bir switch deyimi içinde https://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html

1

, sen break ifadeleri, ya da başka ek anahtar blokları infaz edilebilir yerleştirmeniz gerekir. Aşağıda,

Her bir bildirme deyimi, ilgili anahtar deyimleriyle ilgili bir Java tutorial yazıyor. Kontrol akışı, anahtar bloğunu izleyen ilk ifadeyle devam eder. Break ifadeleri gereklidir, çünkü bunlar olmadan anahtar bloklarındaki ifadeler düşer. Eşleşen vaka etiketinden sonra gelen tüm ifadeler, bir break ifadesine ulaşılana kadar, sonraki vaka etiketlerinin ifadesine bakılmaksızın sırayla yürütülür. durum burada olduğu gibi bir break; olmadan

, kodunuz genellikle, anahtar blokları "suya düşmek" olacaktır.

İlgili konular