00:00
下面我们要看的另外一个东西是关于精神数据解析的。首先这个地方有两个方向,一个解析的技术有哪些,再一个解析有一个方向性的问题,好,先看技术。首先Android里面呢,提供了原生API,可以去解析阶层数据。下面一个。我不知道大家用过这个没有。你们那时候是不是就用它来解析的。是是吧。那很好啊。这是构成框架。啊,我们可以去导它的一个价包就可以用它呢,就相对来说特别简洁,就项目里面基本上都是用的它。但是呢,咱也是适当的去看一看原生的怎么解析的。对吧。你只有看到麻烦了,你才觉得珍惜这个简单的。你会觉得简单的是理所应当的。好,下面。解析的方向,什么方向呢?首先有一个方向是吧,将Java对象。
01:06
啊,这个对象可以是一般的对象,也可以是集合。转换,为什么呢?节省格式的字符串。这个操作呢,一般。出现在服务器端。服务器端是不是要返回给我们一个节点数据啊。那他的数据从哪来的,一般来说。从数据库表里面查。是吧,查到了数据以后呢,是不是生成的就是一个对象啊。Java的对象啊,它需要把Java的对象呢,转换成。节省格式的字符串来返回给客户端。那我另外一个方向就是什么。将Jason格式的字符串转换为Java的对象,可以是一个person student,也可能是一个list,甚至有可能是个。啊,都是有可能的。
02:00
尤其以税居多了。跟大家说一下。大家觉得?哪种是情况比较多的,List的是比较多的,因为经常我们要显示列表。对吧,而列表的数据大家想啊,列表的数据,那封装的时候肯定是不是要封装成一个list的,你才能显示那个list view啊。是吧,啊,那说明我们的接省得到阶层数据外围。是个什么括号啊?是不是中括号啊,你就事实认定了中括号跟谁的意就得了啊。下面相关的一些API,原生的API呢和勾层框架呢,原生的有这样一个类叫。节省object,它对应于节省对象,也就是跟谁对应。大括号对。对吧。好,还有一个。Jason。在一个类。那他就跟谁对应。
03:01
中号对应大印。实时的把对应关系给记住了是关键。啊,你不用说想着里面有什么方法,这个不用太记。它里面呢,有这样一个构造方法。是不是传一个阶层数据啊。他就返回了这样一个对象给你。那对象取数据是怎么取的?对象是怎么取取里面内部的数据?Get的什么呀?是根据什么取什么,怎么个取法?是根据啊。是吧,根据K去取value,真正的大家想我这个地方是不是有K1Y61K2VALUE啊,那你想K4我们所需要的数据吗?不是,它只是我们的标识对不对。洗数据的标识。一定是根据某一个K,也就它的name。去取到他的是吗?Value,这为什么他他呀。因为我的value是不是很多种类型呢。
04:03
这个大家要知道啊。好,下面。大看呢,这把一个JA省字符串转换成一个节省对象。那他怎么取数据。根据下标取,对,这就说到位了,就是根据下标来取数组,不就根据下标取吗?对吧,对象就根据k value。哎,你说为什么要有他呢?有他有了,有了这些,你说我能干干什么事呢?是便利呀。对吧,大家看的这些东西应该有有数啊,就有一个认识有get,传一个index,这不就可便秘了吗?好。如果你用goon就会比较简单了。嗯,这个地方来,你先呢,去创建这样一个类的对象,接着呢,它有一个方法。
05:03
特别牛。叫to Jason里面传一个对象,任意类型的,大家看object看到了不?Object看到啊,你传那个object对象过去咔嚓一下。就是个阶层格式的字符串进来了。但是你看我们原生的里面是不是只有一个方向啊。只有将杰森。字符串是不是解析出来呀。那我们要去做,把对象转化为字符串,这个我不用框架,我得怎么做啊。啊,那就一点一点的拼了。对不对,那你没办法了,那你就就找数据拼呗整呗。对吧,有了它就很爽了,把对象传过去是不算出来了。但是这边基本上是那个无权的工程师用的比较多,对吧。好。下面一个。
06:00
他有这样一个方法。这是干嘛呀?传一个阶层数据,返回一个。对象,关键时刻对象什么类型是不确定的呀。怎么理解?是不是泛型啊,对吧,一个泛型的类型。在这里面呢,用到一个类叫type type的一个类。后面会跟大家说啊,Type是用来干嘛的,它有什么特点?这个呢,大家可能现在不太熟,也也没办不好跟大家说什么,就等到用的时候呢,就跟大家说一下啊。好。下面看测试。我们需要有两个测试啊,一个是测试对象的解析,大家看这是一个什么ID name price。Might pass。这是一个什么东西?是不是节省的一个对象的一个怎算呢。啊,里面很多value。想吃啊。
07:02
嗯,看着大家就眼睛里面就冒金星是吧。好,来下面一个。测试,它也需要测试一下。是这样一个结构。能看懂吧啊,大小一大小二二。好。这个Jason格式呢,它有一个不好的地方,我现在看你看我这个好像好像还看的挺懂的,对吧。因为格式化了嘛。有的时候我跟大家说,真正的去整的时候,是不可能给你一个很格式化的数据的。为什么不给一个格式化的数据呢?是因为格式化以后占的空间更大。对吧。就是你这样传给你和这么传给你那是不一样的,就是我格式化以后,看到我上面是一个格式,下面我把它搞成没有格式的。就没有格式,就是一行。
08:01
你去用去联网请求的时候,可能返回来就是这一行。整个一行数据。嗯,花点时间给他整一下。别认错了就行啊,好吧。哎,你看了就在那,那你你想想看,你不看。现在还好,结构不是特别复杂,对不对,真正的项目里面那个结构是有点小复杂的。那怎么办呢?你你那你呢,拿到你就说老师手动的把它格式化呗,对不对。啊,那就真的疯了是吧?嗯。好。这个地方呢,有一些工具可以去做这样的事。啊,大家看有这样一个工具啊,这里面有32位和60位之分,大家去根据你的那个位数来去选择。
09:04
好,我是64位的hi Jason。好啦。啊,怎么做呢,大概。里面。明鱼吧。好啦,现在干什么呢?格式化。啊,这一个看起来就已经很好了吧,但是这个才看的爽。这种就是层次,以这种这种层次结构展示是比较看的比较舒服的。对吧。是能看懂啊。这个工具啊,带大家去做,后面不有项目实战吗?项目实战里面肯定会用到这个工具啊。这非常简单啊。好,来啊。
10:00
我们继续后面呢,下面我们就要对它呢,进行一个基本的一个测试啊。先停下来。
我来说两句