当我按x时无法突破循环

时间:2015-12-16 16:01:34

标签: java loops break

如果我将条件设置为c =='x',但是如果我将其设置为s =,则它可以工作(不是我想要的,如果文本中存在任何'x',如'asdx',则循环中断) =“x”(所以只有当我输入一个x时,循环才会中断)

public static void main(String[] args) throws IOException {
    InputStreamReader i = new InputStreamReader(System.in);
    String z = "";
    boolean bool=true;
    while (bool==true) {
        int x = i.read();
        char c = (char) x;
        String s = Character.toString(c);
        z += s;
        if (s=="x") {
            bool=false;
        }
    }
    out.println(z);
}

1 个答案:

答案 0 :(得分:1)

使用equals来比较String值:

if(s.equals("x")){
  bool=false;
}

使用==比较对象引用。