人的改变根本不需要质变,你敢做任何一件平时不敢做的事情,你就应该开始变化了。
什么是JSON?
JSON:JavaScript Object Notation,指JavaScript的本地对象,是一种轻量级的数据交换格式。
JSON有何用?
前面说到JSON是一种轻量级的数据交换格式,它一般用于实现前后台的数据交互。
JSON采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
JSON语法
理论上任何支持的类型都可以通过JSON来表示,例如字符串、数字、对象、数组等。但是对象和数组是比较特殊且常用的两种类型,特点如下:
- 对象表示为键值对(key-value)
- 数据由逗号分隔
- 花括号保存对象
- 方括号保存数组
JSON对象
JSON对象语法格式为:
var JsonObjectName = {"key1":"value1", "key2":"value2"...};
键名可以不加引号包裹:
var JsonObjectName = {key1:"value1", key2:"value2"...};
JSON对象属性的调用:
JsonObjectName.key;
或者
JsonObjectName["key"];
JSON对象在Java中如何取值:
以Fastjson为例:
JsonObjectName.getDataType("key");
其中DataType是key所对应value的数据类型
JSON数组
JSON数组语法格式为:
var JsonArrayName = [JsonObject1, JsonObject2...];
即
var JsonArrayName = [{"key1":"value1", "key2":"value2"...}, {"key1":"value1", "key2":"value3"...}...];
获取JSON数组中每个JSON对象:
JsonArrayName[index]; // index - 指数组索引
JSON数组在Java中如何取得JSON对象:
以Fastjson为例:
JsonArrayName.getJSONObject(index); // index - 指数组索引
JSON字符串
其实JSON字符串就是字符串,但是因为Java本身没有JSON这一数据类型,经常要借助JSON字符串进行JSON对象与Java对象,或者JSON数组与Java集合之间的转换。
代码示例:
/**
* @author guqueyue
* @Date 2020/4/4
* JSON示例
**/
public class JsonTest {
public static void main(String[] args) {
String json1 = "{name:'大锤', age:18}";
String json2 ="[{name:'大锤', age:18}, {name:'磊磊', age:19}]";
System.out.println("json对象格式:"+ json1);
System.out.println("json数组格式:" + json2);
}
}
Output: