Android第八讲笔记-2(JSON)

Android第八讲笔记-2(JSON),第1张

概述目录JSON结构简介获取JSON数据1.简单JSON格式数据2.JSON解析数组3.JSON嵌套JSON对象嵌套JSON对象JSON数组嵌套JSON对象学会使用工具分析json结构总结补充本节的内容是接着Android第八讲笔记-1(网络编程)而来。解说的案例和上节相同JSON结构简介JSON(JavaScriptObjec

目录JSON结构简介获取JSON数据1.简单JSON格式数据2.JSON解析数组3.JSON嵌套JSON对象嵌套JSON对象JSON数组嵌套JSON对象学会使用工具分析json结构总结补充

本节的内容是接着Android第八讲笔记-1(网络编程)而来。解说的案例和上节相同

JsON结构简介

JsON(JavaScript Object Notation) 是一种轻量级的数据交换格局。易于人阅览和编写,同时也易于机器解析和生成(一般用于提高网络传输速率)。

获取JsON数据1.简单JsON格式数据

这个端口返回的数据是**{ “age”:30,“name”:“张三”, “isstudent”:true }**

我们如何将数据提出来呢?

分析结构

通过key值来获取对应的值

核心代码

JsONObject JsonObject = new JsONObject(finalResult);int age = JsonObject.getInt("age");String name = JsonObject.getString("name");boolean isstudent = JsonObject.getBoolean("isstudent");
2.JsON解析数组

这个端口返回的数据是**{ “grade”:“18级”,“classname”:“计算机科学与技术”,“students”:[“张三”,“李四”,“王五”] }**

如果是一个中括号[],里面全部是value,value之间用逗号给开[value,value,…]value 可以是字符串,数字,boolean(必须是同一种类型)

这就是一个JsON格式的数组

分析结构

先将Json数据传进JsONArray,然后再用for循环,可以取到数组中各个位置的值

核心代码

JsONObject JsonObject = new JsONObject(finalResult);String grade = JsonObject.getString("grade");String classname = JsonObject.getString("classname");for(int i=0;i<JsonObject.length();i++){	String o = (String) students.get(i);	Log.i("MainActivity",o);}
3.JsON嵌套JsON对象嵌套JsON对象

这个端口返回的数据是**{ “age”:20,“name”:“张三”, “isstudent”:true,“class”:{“grade”:“18级”,“classname”:“计算机科学与技术”} }**

可以看到数据中,JsON对象中又嵌套了一个JsON对象
分析结构

这个JsON数据中有四个键值对

核心代码

JsONObject JsonObject=new JsONObject(finalResult);String name = JsonObject.getString("name");int age=JsonObject.getInt("age");boolean isstudent = JsonObject.getBoolean("isstudent");JsONObject aClass = JsonObject.getJsONObject("class");String classname = aClass.getString("classname");String grade = aClass.getString("grade");
JsON数组嵌套JsON对象

这个端口返回的数据是**{ “grade”:“18级”,“classname”:“计算机科学与技术”,“students”:[ { “ID”:“001”,“age”:30,“name”:“张三”, “isstudent”:false }, { “ID”:“002”,“age”:25,“name”:“李四”, “isstudent”:true }, { “ID”:“003”,“age”:26,“name”:“王五”, “isstudent”:true } ]}**

分析结构

核心代码

JsONObject JsonObject = new JsONObject(finalResult);String grade = JsonObject.getString("grade");String classname = JsonObject.getString("classname");JsONArray students = JsonObject.getJsONArray("students");for(int i=0;i<students.length();i++){	JsONObject JsonObject1 = students.getJsONObject(i);	String name=JsonObject1.getString("name");	Log.i("MainActivity",name);}
学会使用工具分析Json结构

这个端口返回的数据是**[ { “ID”:“001”,“age”:30,“name”:“张三”, “isstudent”:false }, { “ID”:“002”,“age”:25,“name”:“李四”, “isstudent”:true }, { “ID”:“003”,“age”:26,“name”:“王五”, “isstudent”:true } ]**

而我们分析结构可以采用这个工具,JSON在线解析及格式化验证

总结

根据上面的分析,我们知道

1.JsON对象一般是由一个大括号{},里面是键值对的存储形式,{“key”:value,“key”:value,…},value可以是数字,字符串,boolean,JsON对象,数组

2.JsON数组是一个中括号[],里面都是value值,值与值之间逗号隔开。[value,value,…],value 可以是字符串,数字,boolean,JsON对象等等(必须是同一种类型)

补充

VIEwBinding用法

在获取控件的ID的时候,我们有时候会弄错ID而导致报错,而使用VIEwBinding可以适当降低错误

可以看到在对象中带有控件的属性,可以有效降低错误


从而使用java对象的方法获取控件并且赋值。

总结

以上是内存溢出为你收集整理的Android第八讲笔记-2(JSON)全部内容,希望文章能够帮你解决Android第八讲笔记-2(JSON)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1012233.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存