有人可以告诉我为什么这个块不能正常工作?

时间:2011-07-28 06:47:24

标签: android string if-statement boolean-logic

代码:

String my = c.getString(c.getColumnIndexOrThrow("ringtype"));
Log.e("my", my);
if(my=="default")
{
    Log.e(tablename, "button marked not visable1");
}
else
{
    Log.e(tablename, "button marked visable2");
}

logcat的:

07-28 02:10:57.396: ERROR/my(16204): default
07-28 02:10:57.404: ERROR/meds(16204): button marked visable2

我还尝试Log.e("my", "!"+my+"!");查看是否有隐藏的空白区域将其丢弃。但没有。据我所知,这两个是匹配,我应该得到按钮不可见的消息。

所以我必须遗漏一些东西,但我无法弄清楚它是什么 编辑:谢谢大家,如果可能的话,我会接受所有的答案。

4 个答案:

答案 0 :(得分:3)

字符串无法与==进行比较 像if(my.equals("default"))

一样使用

答案 1 :(得分:3)

“我的”是不同的对象而“默认”是另一个...当您使用“==”运算符时,它会比较实际地址/参考,其中“。等于”比较内容..所以使用.equals

答案 2 :(得分:0)

尝试my.equals("default")而不是my=="default"

答案 3 :(得分:0)

您可以查看if(my.equals("default"))