Android:JSON字符串数据与其他字符串进行比较

Tom*_*m B 3 string android json compare

我想将使用JSON的mysql数据库中的字符串与我的字符串进行比较.我从数据库收到数据,Log显示我有所有数据.

try{
     JSONArray jArray = new JSONArray(result);
     for(int i=0;i<jArray.length();i++){
         json_data = jArray.getJSONObject(i);
         Log.i("mylog","TABLE_NAME: "+json_data.getString("table_name"));//returns cars

         if (  json_data.getString("table_name") == "cars" ) { //dosent work
              .... 
         }
     }
} catch(JSONException e){
         Log.e("mylog", "Error parsing data "+e.toString());
     return false;
}
Run Code Online (Sandbox Code Playgroud)

并且在Log I的这个示例中收到了表格的名称:汽车以及IF条件下面的情况不起作用,我不知道为什么.它很奇怪.我尝试了很多方法.

你知道为什么我不能将JSON中的table_name与简单的String进行比较的原因是什么?

Sam*_*iya 8

使用.equals()在Java/Android的比较两个字符串.

if (json_data.getString("table_name").equals("cars")) {  

         }
Run Code Online (Sandbox Code Playgroud)

它比较Strings refrence所以不能工作......

当你使用String文字然后使用 ==

并且==仅适用于原始数据类型,这里String is Object使用.equals