これは非常に単純なことだとわかっていますが、プログラミングを始めてまだ数か月しか経っていないので、頭がぼんやりすることがあります。ユーザーが自分の選択に入る機会が決して与えられないため、私のループの問題は継続的です(-1はループを停止します)。ユーザーに選択肢を入力するように求めることで動作するようにループを変更するにはどうすればよいですか (1-4、または終了するには -1)。
どんな助けでも大歓迎です。私はそれが単純なものであることを知っています.以前のフォーラムのディスカッションを検索しましたが、うまくいかないようです.
//create new scanner object
Scanner userInput = new Scanner (System.in);
int end = 0;
//find out what user wants to do with address book
while (end != -1)
{
System.out.println(" ");
System.out.println(" ");
System.out.println("----------------------------");
System.out.println("What would you like to do with your address book? ...");
System.out.println("----------------------------");
System.out.println("Add new [Enter 1]");
System.out.println("Delete existing [Enter 2]");
System.out.println("Edit existing [Enter 3]");
System.out.println("Search for [Enter 4]");
System.out.println("EXIT [Enter -1]");
}
if (userInput.hasNext() && (userInput.nextInt() == 1))
{
AddressBookProcessor.addContact();
}
else if (userInput.hasNext() && userInput.nextInt() == 2)
{
AddressBookProcessor.deleteContact();
}
else if (userInput.hasNext() && userInput.nextInt() == 3)
{
AddressBookProcessor.editContact();
}
else if (userInput.hasNext() && userInput.nextInt() == 4)
{
AddressBookProcessor.findContact();
}
else if (userInput.nextInt() != 1 || userInput.nextInt() != 2
|| userInput.nextInt() != 3 || userInput.nextInt() != -1)
{
System.out.println("Please enter a valid input");
end = -1;
}
}