2015-12-19 74 views
0

我写在Java中的聊天客户端,并得到一个奇怪的错误信息,同时试图在Eclipse 4.4.1编译如下:BufferedReader readLine()方法返回布尔值?

  ... 
      BufferedReader socketIn = new BufferedReader(new InputStreamReader(socket.getInputStream())); 
      ... 
      String answer; 
      while (answer = socketIn.readLine() != null) { 
       incomingTextField.setText(answer); 
      } 
      ... 

的错误是:

类型不匹配:不能从布尔值转换为字符串

还有出现尖:

“答案”到“布尔”

的变化类型。然而,这是没有意义的,因为根据文档readLine()必须返回String

+3

尝试把括号像这样'(答案= socketIn.readLine())' – Arc676

回答

11

你需要一些()的位置:

while ((answer = socketIn.readLine()) != null) { 

检查约Operator Precedence弄清楚为什么

好运