我正在尝试检查我的JSON对象中的一些细节,但问题是当我从JSON获取数据并与另一个进行比较时,存在一个我无法弄清楚的问题。
我试图从JSON中获取“status”(字符串true / false)字段并与真实字符串的字符串进行比较,然后从JSON打印另一个字段,问题是它不会进入if段甚至虽然它需要true == true
JSON对象 -
[
{
"latitude":"33.33",
"longitude":"44.44",
"name":"test1",
"Notification":"true",
"status":"true"
},
{
"latitude":null,
"longitude":null,
"name":null,
"Notification":null,
"status":"false"
}
]
try {
JSONArray jsonarray = new JSONArray(answer);
for (int i = 0; i < jsonarray.length() - 1; i++) {
JSONObject jsonobject = jsonarray.getJSONObject(i);
String a = jsonobject.getString("status"); // for the first is true and the second is false
if(a == "true"){ // not enter to this if a equal to true
Log.d("test",jsonobject.getString("status"));
}
}
}catch(Exception e)
{
e.printStackTrace();
}
如果有人能帮我理解问题,我会很高兴。感谢。
答案 0 :(得分:1)
使用此
try {
JSONArray jsonarray = new JSONArray(answer);
for (int i = 0; i < jsonarray.length() - 1; i++) {
JSONObject jsonobject = jsonarray.getJSONObject(i);
String a = jsonobject.getString("status"); // for the first is true and the second is false
if(a.equals("true")){ // not enter to this if a equal to true
Log.d("test",jsonobject.getString("status"));
}
}
}catch(Exception e)
{
e.printStackTrace();
}