【发布时间】:2015-08-14 01:26:49
【问题描述】:
我正在使用readline() 方法读取inputstream,然后尝试比较它。
代码如下:
//socket is defined before this
InputStream is = socket.getInputStream();
br = new BufferedReader(new InputStreamReader(is));
Line = br.readLine();
if (Line == "hey") {
Log.d("watsapp client tag", "message pushed !!");
Log.d("watsapp client tag", "" + Line);
}
else {
Log.d("watsapp client tag", "message not pushed");
Log.d("watsapp client tag", "" + Line);
}
上面的代码总是执行 else 部分。虽然输入流的第一个值是“嘿”而第二个不是。所以我期待在logcat中“消息推送!!”和“未推送消息”相反,我得到了“未推送消息”
05-31 14:46:14.309 6138-6151/? D/watsapp client tag﹕ message not pushed
05-31 14:46:14.309 6138-6151/? D/watsapp client tag﹕ hey
05-31 14:46:14.339 6138-6151/? D/watsapp client tag﹕ message not pushed
05-31 14:46:14.339 6138-6151/? D/watsapp client tag﹕ <Messageadded:1112/>
请告诉if (Line == "hey") 行出了什么问题。谢谢!
【问题讨论】:
-
比较字符串时使用
equals
标签: java string sockets inputstream