WHILE循环中的多个条件

时间:2012-06-11 23:55:18

标签: java while-loop

当用户输入“N”或“n”时,我想退出while循环。但它不起作用。它适用于一种情况,但不适用于两种情况。

import java.util.Scanner;

class Realtor {

    public static void main (String args[]){

        Scanner sc = new Scanner(System.in);

        char myChar = 'i';

        while(myChar != 'n' || myChar != 'N'){

           System.out.println("Do you want see houses today?");
           String input = sc.next();
           myChar = input.charAt(0); 
           System.out.println("You entered "+myChar);
        }
    }
}

3 个答案:

答案 0 :(得分:20)

您需要将||更改为&&,以便两个条件都必须为true才能进入循环。

while(myChar != 'n' && myChar != 'N')

答案 1 :(得分:1)

你的病情有误。 myChar != 'n' || myChar != 'N'永远都是真的。

使用myChar != 'n' && myChar != 'N'代替

答案 2 :(得分:0)

如果您的代码,如果用户输入'X'(例如),当您达到while条件评估时,它将确定'X'与'n'(nChar!='n')不同,这将使你的循环条件为true并执行循环内部的代码。第二个条件甚至没有评估。