我正在使用蓝牙聊天示例,我有以下问题..
当我在处理程序中添加if语句时,它总是返回false ..
case MESSAGE_READ:
byte[] readBuf = (byte[]) msg.obj;
String stringMsg = new String(readBuf);
if ( stringMsg == "a"){
Log.i(tag,"x RECEIVED OK...");
}
break;
当我调试程序时,我得到:
stringMsg = {java.lang.String@830020784928}"a��������....."
value = {char[1364]830020788104}
[0] = 'a' 97
[1] = '\u0000' 0
[2] = '\u0000' 0
[3] = '\u0000' 0
[4] = '\u0000' 0
[5] = '\u0000' 0
[6] = '\u0000' 0
...
...
...
...
...
hashCode = 0
offset = 0
count = 1024
你能帮我看看输入流将字符保存为字符串(stringMsg)并能够使用if语句检查其内容吗?
提前谢谢..!
答案 0 :(得分:0)
if(stringMsg ==“a”) 应为 if(stringMsg.equals(“a”)) < / strong>如果要比较值而不是参考值。