我们要学习使用JSON解析,必须对JSON解析的规则原理有深刻的认识和了解,然后才知道它的一个实现原理JSON里面的数据是以一种键值对的方式存在(”key”:”value”)中值的类型可以是下面数据类型中的任意一种:1. 数字(整数或浮点数)2. 逻辑值(true 或 false)3. 字符串(在双引号中)4. 数组(在方括号中)5. 函数6. 对象(在大括号中)7. null
JSON的语法规则非常的简单,就是使用大括号’{}’,中括号’[]’,逗号’,’,冒号’:’,双引号’“”’。
数据类型:嵌套对象、数组、字符串、数字、布尔值或空值。
我们在JSON解析中只有三中情况出现1.{} 解析’大括号’类型2. [ ] 解析是’中括号’类型3. 其实只有两种,那第三种则是1与2的组合方法即”{’name’:’李书豪’ ,’hobby’:[‘编程’,’电竞’,’睡觉’]}”那么下面分别来看一些这三种类型以及解析
JSON解析一定要掌握的两条规则:
掌握了JSON的数据类型和基本语法后,下面我们将对JSON的各种语法类型进行详细解析(注意掌握两条规则的使用,掌握了JSON解析就那么回事)
纯对象(Object)的解析{ }:
开始解析:
小结: {[ {},{}]}–>思路:第一步看到大括号:JSONObject去解,创建好对应里面的属性的值;第二步看到中括号:JSONArray去解析对应创建好对应里面的属性值;第三步中括号里面的{},又是一个JSONObject。思路大致如此,强调注意的是,设置的属性值setXxxgetXxx必须要和去获得值名称一致,不然会出错!!
下面我们来解析一个略为复杂的JSON数据要解析的数据如下:
分析:一:第一个大括号(JSONObject){”desc”: “status”: “data”}二:大括号里面有一个大括号(JSONObject){”wendu”: “20”, “ganmao”: “forecast”: “yesterday”: “aqi”: “city”: }三:第二个大括号里面有两个对象 1.数组形(JSONArray) 2.对象形( JSONObject )而数组形里面又套有数组的对象{} 。这就需要咱们在解析的时候需要很细致的去创建对应的属性值,JSON解析并不难,而难受的地方就提现在对类的创建中,只要够细心也超简单!
结语: 对于JSON解析个人的粗浅看法,1.首先是对JSON数据的一个分析2.其次是掌握JSON一些技巧(两条规则–对象形JSONObject ,数组形JSONArray)3.而后是对对应的属性值进行对应的字段封装建立对应的类(分析要细心,思路要清晰,程序这行需要有耐心不能浮躁)