一直特别蠢的在寻找如何确定此时获得的mac地址是否和事先预定的相同的方法……
原来是不可以用"==",应该用 equals……
==是地址相同…… equals是值相同……
哭……
/* 显示列表 */
protected void showDevices()
{
List<String> list = new ArrayList<String>();
int flag=0;
for (int i = 0, size = _devices.size(); i < size; ++i)
{
StringBuilder a = new StringBuilder();
StringBuilder b = new StringBuilder();
BluetoothDevice d = _devices.get(i);
a.append(d.getName());
String s = a.toString();
b.append(d.getAddress());
String mactmp=b.toString();
//b.append('\n');
//b.append(d.getName());
String cat01mac = "40:98:4E:20:4B:E3";
String basemac="00:18:31:3E:35:3C";
if(mactmp.equals(cat01mac)){s = s + " is INEYE now"; list.add(s);flag=1;}
else if(mactmp.equals(basemac)){s = s + " is INEYE now"; list.add(s);flag=1;}
}
if(flag==0)list.add("No cats in eye now");
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, list);
_handler.post(new Runnable() {
public void run()
{
setListAdapter(adapter);
}
});
}
本文介绍了一种在Java中通过使用equals方法而非==操作符来比较字符串,从而判断蓝牙设备MAC地址是否与预设地址相匹配的方法。文章通过具体代码示例展示了如何遍历蓝牙设备列表,并将每个设备的MAC地址与预设的MAC地址进行比较。
1435

被折叠的 条评论
为什么被折叠?



