对于java格式数据的处理:
1: 先创建java实体类,例如:
public class Brand {
private String id;
private String brandName;;
public void setId(String id) {
= id;
}
public String getId() {
return id;
}
public String getBrandName() {
return brandName;
}
public void setBrandName(String brandName) {
= brandName;
}
2:创建java类的类对象
Brand brand1=new Brand();
Brand brand2=new Brand();
3:添加数据
(1);
("奔驰");
(2);
("宝马");
4:添加到 list 中
List<Brand> list=new ArrayList<Brand>();
(brand1);
(brand2);
5:在json对应的数据格式(Object格式)中添加数据
Map<String,Object> map=new LinkedHashMap<String,Object>();
("reason", "success");
("result", list); // list
6:转化为json类型的数据并输出 //(java类型数据)
((map));
------------------------------------------------------------------------------------------------------------------------
对于json格式数据:
1:先用 JSONObject jsonObj=(str); //str是json格式的数据
2:对于获取不同格式的数据
(1):JSONArray格式:
JSONArray jsonArray=("result");
(2):JSONObject格式:
JSONObject provinceCompareJsonObj=
("data").getJSONObject("provinceCompare");
//要获取"provinceCompare"内的数据“
//data”内的数据为JSONObject格式,且"provinceCompare"内的数据也为JSONObject格式
3:(1):对于要输出的数据是Object对象,例如{ 键1:{键2:值} }的格式
for(Entry<String,Object> entry:()) {
("省份/直辖市:"+()); //获取其中的键1并输出
//获取<键2:值>的对象,再依次输出其中的值
JSONObject value=(JSONObject)();
("nowConfirm:"+("nowConfirm"));
("dead:"+("dead"));
("heal:"+("heal"));
("confirmAdd:"+("confirmAdd"));
();
}
(2): 对于要输出的数据是数组对象 例如 [{键:值,键:值},{键:值,键:值}] 的格式
1):遍历方法1
对其中的每个值都通过对应的键来获取
//先获取jsonArray的长度,再遍历
for(int i=0;i<();i++) {
JSONObject item=(i); //获取其中的每一个Object对象
("id:"+("id")); //对其中每个Object对象,获取值
("question:"+("question"));
("answer:"+("answer"));
("item1:"+("item1"));
("item2:"+("item2"));
("item3:"+("item3"));
("item4:"+("item4"));
("explains:"+("explains"));
("url:"+("url"));
(); //每次遍历最后都换行
}
2):遍历方法2
需要创建要获取的数据的类的对象,根据类对象的get方法获取值
//需要创建要获取的数据的类的对象,根据类对象的get方法获取值
List<Detail> questionList=("result", );
for(Detail detail:questionList) {
("题干:"+());
("答案:"+());
("选项1:"+detail.getItem1());
("选项2:"+detail.getItem2());
("解析:"+());
();
}