2021电大《Android网络开发技术》形考任务一教学实践1答案

上传人:缘*** 文档编号:595381383 上传时间:2024-11-14 格式:PDF 页数:7 大小:690.59KB
返回 下载 相关 举报
2021电大《Android网络开发技术》形考任务一教学实践1答案_第1页
第1页 / 共7页
2021电大《Android网络开发技术》形考任务一教学实践1答案_第2页
第2页 / 共7页
2021电大《Android网络开发技术》形考任务一教学实践1答案_第3页
第3页 / 共7页
2021电大《Android网络开发技术》形考任务一教学实践1答案_第4页
第4页 / 共7页
2021电大《Android网络开发技术》形考任务一教学实践1答案_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《2021电大《Android网络开发技术》形考任务一教学实践1答案》由会员分享,可在线阅读,更多相关《2021电大《Android网络开发技术》形考任务一教学实践1答案(7页珍藏版)》请在金锄头文库上搜索。

1、2021国家开放大学电大Android网络开发技术形考任务一教学实践1答案形考任务一教学实践1完成以下JSON的解析,完成主体代码即可,解析方法及库不限。一、什么是JSON?JSON是一种取代XM L的数据结构,和 xm l相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度。JSON就是一串字符串只不过元素会使用特定的符号标注。双括号表示对象 中括号表示数组 双引号内是属性或值:冒号表示后者是前者的值(这个值可以是字符串、数字、也可以是另一个数组或对象)所 以 name:Michael)可以理解为是一个包含name为 Michael的对象Wname:Mich

2、ael),name:Jerry就表示包含两个对象的数组当然了,你也可以使用name:Michael,Jerry来简化上面一部,这是一个拥有一个name数组的对象二、JSON解析之传统的JSON解析1、生成json字符串public static String createJsonString(String key,Object value)JSONObject jsonObject=new JSONObject();jsonObject.put(key,value);return jsonObject.toString();2、解析JSON字符串分为以下三种情况,一个Java B ean,一个

3、List数组,一个嵌套Map的 List数组:import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import org.json.JSONArray;import org.json.JSONObject;import com.android.myjson.domain.Person;/*完成对json数据的解析*/public class JsonTools public static Person get

4、Person(String key,String jsonString)Person person=new Person();try(JSONObject jsonObject=new JSONObject(jsonString);JSONObject personobject=jsonObject.getJSONObject(person);person.setld(personObject.getlnt(id);person.setName(personObject.getString(name);person.setAddress(personObject.getString(addre

5、ss);catch(Exception e)/TODO:handle exception)return person;)public static List getPersons(String key,String jsonString)List list=new ArrayList();try(JSONObject jsonObject=new JSONObject(jsonString);/返回json的数组JSONArray jsonArray=jsonObject.getJSONArray(key);for(int i=0;i jsonArray.length();i+)JSONObj

6、ect jsonObject?=jsonArray.getJSONObject(i);Person person=new Person();person.setld(jsonObject2.getlnt(id);person.setName(jsonObject2.getString(name);person.setAddress(jsonObject2.getString(address);list.add(person);)catch(Exception e)/TODO:handle exception)return list;)public static List getList(Str

7、ing key,String jsonString)List list=new ArrayList();try(JSONObject jsonObject=new JSONObject(jsonString);JSONArray jsonArray=jsonObject.getlSONArray(key);for(int i=0;i listKeyMaps(String key,String jsonString)List list=new ArrayList();try(JSONObject jsonObject=new JSONObject(jsonString);JSONArray js

8、onArray=jsonObject.getlSONArray(key);for(int i=0;i().getType();catch(Exception e)return list;)/*param jsonString*return*/public static List getList(String jsonString)List list=new ArrayList();try(Gson gson=new Gson();list=gson.fromJson(jsonString,newTypeToken().getType();catch(Exception e)/TODO:hand

9、le exception)return list;)public static List listKeyMaps(String jsonString)List list=new ArrayUst();try(Gson gson=new Gson();list=gson.fromJson(jsonString,new TypeToken().getType();catch(Exception e)/TODO:handle exception)return list;三、JSON 解析之 FastJSONimport java.util.ArrayList;import java.util.Lis

10、t;import java.util.Map;import com.alibaba.fastjson JSON;import com.alibaba.fastjson.TypeReference;public class JsonTool public static T getPerson(String jsonstring,Class cis)T t=null;try(t=JSON.parseObject(jsonstring,cis);catch(Exception e)/TODO:handle exception)return t;public static List getPerson

11、List(String jsonstring,Class cis)List list=new ArrayList();try(list=JSON.parseArray(jsonstring,cis);catch(Exception e)/TODO:handle exceptionreturn list;public static List getPersonListMapl(String jsonstring)List list=new ArrayList();trylist=JSON.parseObject(jsonstringznew TypeReference().getType();catch(Exception e)/TODO:handle exceptionreturn list;)总结:JSON对于移动设备来说,尤其对于网络环境较差和流量限制的情况下,相对于XML格式的数据传输会更节省流量,传输效率更高。在这三种解析方式中FastJson是效率最高的,推荐使用

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号