2016-03-31 39 views
0

Java'da herhangi bir yol var mı, böylece kod içinde ileri ve geri gidebilir miyim? Kullanıcının çeşitli seçenekler arasında karar verebileceği bir kod oluşturmak istiyorum, etiketleri kullanabilir miyim yoksa bir anahtar kullanmak zorunda mıyım?java etiketleri ve etiketleri (döngülerin dışındakiler hariç)

ben böyle bir şey kodlamak istiyorum: i anahtarını kullanmadan java bunu böylece

public static void main(String[]args){ 

START: 
    System.out.println("What do you whish to do?"); 
    System.out.println("X"); 
    System.out.println("Y"); 
    System.out.println("Z"); 

     if(kbd.nextLine().equals("X")){goto x;} 
     if(kbd.nextLine().equals("Y")){goto y;} 
     if(kbd.nextLine().equals("Z")){goto z;} 

X: //CODE FOR ACTION X// 
goto START; 
Y: //CODE FOR ACTION Y// 
goto START; 
Z: //CODE FOR ACTION Z// 
goto START; 
} 

herhangi bir yolu var mı?

+5

** ** bir 'goto' oluşturmaya çalışmayın LÜTFEN. Bir sebepten dolayı * kabul edilmemiş * ** saklıdır ** kelimesi. Göndermiş olduğunuza dayanarak, bir *** döngüsü *** kullanın. –

+0

Sorununuza çok az çözüm var, ancak bunların hepsi gerçekten gerçekten ne elde etmek istediğinize bağlı. Döngüler, yöntemler kombinasyonunu kullanabilir veya kodunuzu doğrudan 'if' bloğuna koyabilirsiniz. – Pshemo

+0

Farklı yöntemler kullanın. –

cevap

0

Sizin kodunuz zaten işe yaramaz. Eğer kullanıcı "Y" girmişse, ilk önce GOTO işlemini yapmaz ve program bir sonraki satırda bir girdi bekler.

oldukça böyle bir şey olmalı (eğer kullanabilir ya en ya anahtarı ise):

String exitCode = "q"; 
String ans = ""; 
while(!ans.equals(exitCode) { 
    System.out.println("What do you wish to do?"); 
    System.out.println("X"); 
    System.out.println("Y"); 
    System.out.println("Z"); 
    String ans = kbd.nextLine(); 
    if (ans.equals("X") { 
    // code for X action 
    } else if (ans.equals("Y") { 
     // code for Y action 
    } else if (...) { 
    // etc 
    } 
} 
+0

teşekkürler, kodun daha temiz olacağı şekilde kullanmak istedim ama sanırım bunu kaba bir şekilde yapmak zorunda –