我想弄清楚为什么我的while循环给我留下了一个无限循环,即使逻辑上来说,我也没有办法进步,对我来说它似乎应该起作用。继承人问题代码:为什么Java在代码创建无限循环时执行此操作?
public void enterData(){
System.out.println("Polish Notation Calculator");
do{
System.out.print("Please enter an operation: ");
oper = input.next().charAt(0);
}while (oper != '+' || oper != '*' || oper != '/' || oper != '-' || oper != '%');
System.out.print("First number: ");
x = input.nextDouble();
System.out.print("Second number: ");
y = input.nextDouble();
从我可以告诉,这一切的环说是做的打印和扫描功能,而OPER不等于在引号的内容。为什么这不起作用?
while循环布尔条件始终为真。 –
想一想。也许你想用'&&'操作符;) –
你要求用户输入一个操作,只检查他们是否没有输入操作... –