java问题,要实现:输入的不是+ - * /就重新输入,但是不行,问题在哪?

import java.util.Scanner;

public class Test {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);
int flag;
String str;
do{
flag = 1;
System.out.print("请输入+ - * / 四个运算符中的一个:");
try{
String s = input.next();
while(s.equals("+") || s.equals("-") || s.equals("*") || s.equals("/")){
str = s;
}
}catch(Exception e){
flag = 2;
System.out.println("输入错误!请重新输入!");
input.next();
}
}while(flag == 2);
}
}

while(s.equals("+") || s.equals("-") || s.equals("*") || s.equals("/")){
str = s;
}
改成:if(s.equals("+") || s.equals("-") || s.equals("*") || s.equals("/")){
str = s;
}追问

试了下不行啊

追答

检查while条件为什么是==2

input.readline

现在是什么问题吧

追问

不管等于几不都是一样的么,只是个判断条件啊

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答
大家正在搜