//先导入gson的jar包//gson的一般使用方法//class的属性名必须与json字符串中的key大小写完全一致//解析JSONArrayprivatevoidparseJSONArray(){StringjsonArr="[{'key1':'value1','key2':'value2'},{'key1':'value1','key2':'value2'}]";Gsongson=newGson();java.lang.reflect.Typetype=newcom.google.gson.reflect.TypeToken<List<JsonData>>(){}.getType();List<JsonData>fromJson=gson.fromJson(jsonArr,type);mTextView.setText(fromJson.toString());}//解析JSONObjectprivatevoidparseJSONObject(){StringjsonObj="{'key1':'value1','key2':'value2'}";Gsongson=newGson();JsonDatajsonData=gson.fromJson(jsonObj,JsonData.class);mTextView.setText(jsonData.toString());}classJsonData//属性必须与json里面的key一致{Stringkey1;Stringkey2;@OverridepublicStringtoString(){return"JSON1[key1="+key1+",key2="+key2+"]";}}




注:

1.参数类型不能是ArrayList,而是List

publicclassTestJson{publicintId;publicStringName;publicParamJsonEstateParam;publicList<String>Banners;//此处参数类型不能是ArrayList,而是List}publicclassParamJson{publicintId;publicStringName;publicList<String>ListData;}


解析只要一句代码即可:

TestJsonmJson=((TestJson)newGson().fromJson(str,TestJson.class));