为什么我的“if”声明没有开火?
String something = "";
String category = json_data.getString("den");
Log.e("JSON", "category="+category);
if (category == "1"){
something = "Random something";
}
即使在我的logcat中我可以看到JSON:“category = 1”,“something”字符串也不会取“Random something”值。 这必须是java中的一些约定? 请帮忙。
答案 0 :(得分:4)
使用:
if (category.equals("1")){
something = "Random something";
}
或更好的方法来避免空指针异常:
if ("1".equals(category)){
something = "Random something";
}
另请查看此链接以获取详细信息:How do I compare strings in Java?
答案 1 :(得分:1)
您需要使用String对象上的.equals方法在Java中进行字符串比较。您正在进行的比较只是比较引用而不是实际的字符串值。
示例:
if(category.equals("1")){
//do amazing stuff
}