我根据我发现的一个例子编写了这段代码:
do {
System.out.print("¿What kind of envelope do you want? (A)Mini B)Midi C)Maxi): ");
cadena = sc.next();
tipo = cadena.charAt(0);
tipo=Character.toUpperCase(tipo);
} while (tipo != 'A' || tipo != 'B' || tipo != 'C');
但它一直在问我这种信封而不是注册我的选择。 我做错了什么,我该如何解决?
答案 0 :(得分:2)
tipo != 'A' || tipo != 'B' || tipo != 'C'
如果输入为A OR B或C - 条件仍将返回true 它会继续循环,因为它与其他两种组合不匹配。
!(tipo == 'A' || tipo == 'B' || tipo == 'C')
答案 1 :(得分:0)
尝试将||
运算符更改为&&
。
答案 2 :(得分:-1)
使用!tipos.equals('A')
代替!=