菜鸟提问:java程序中输入有效性的问题?

来源:百度知道 编辑:UC知道 时间:2024/05/23 01:15:50
我的程序是要实现一个菜单供用户选择,输入不同的选项程序作出相应的操作,本人已经把这部分做完了,但还有一个要求是如果用户输入的选项无效的话,系统会给下面的提示,让用户重新输入:
Error! You did not make a valid selection...
Please enter your selection(A,B or X):

我写了下面的代码,但如果加在do while循环里面的话,会出现这样的问题:如果我输入一个无效选项,程序会打印出报错并提示重新输入,可当我重新输入时,程序就没反应了。想了半天不知道这段程序应该放在什么地方,各位高手帮帮忙!~~

if (answer != 'A' || answer != 'B' || answer != 'X') System.out.println("Error! You did not make a valid selection...");
System.out.println("Please enter your selection(A,B or X): ");
answer = charInput.readLine().charAt(0);

这个是我的总的程序:

import java.io.*;
public class ass2 {
public static void main(String args[]) throws java.io.IOException {
BufferedReader charInput = new BufferedReader(new InputStreamReader (System.in));
char answer;
do {
System.out.println(" ");
System.out.println("********** Assignment 2 Menu ***********\n");
S

你选择项 用swtich case 做 就可以了

晕倒,你得好好看看那几个循环的用法了。do...while是至少执行一次的,我这样说你明白吗?就是第一次无论你输入的是什么,他也会执行一次,第二次时如果不是while()的就不会继续执行了。好好看看基础吧。