JAVA 解析Json字符串

JSON简介

  • JAVAScript Object Notation是一种轻量级的数据交换格式
  • 具备良好的可读和便于快速编写的特性。
  • 业内主流技术为其提供了完整的解决方案(有点相似于正则表达式 ,得到了当今大部分语言的支持)
  • JSON采用兼容性很高的文本格式,同时也具有相似于C语言体系的行为。 – Json.org
  • JSON做为数据是目前网络中主流的数据传输格式之一,应用十分普遍

JSON支持的数据类型

咱们要学习使用JSON解析,必须对JSON解析的规则原理有深入的认识和了解,而后才知道它的一个实现原理 
JSON里面的数据是以一种 键-值对的方式存在 
(”key”:”value”)中值的类型能够是下面数据类型中的任意一种: 
1. 数字(整数或浮点数) 
2. 逻辑值(true 或 false) 
3. 字符串(在双引号中) 
4. 数组(在方括号中) 
5. 函数 
6. 对象(在大括号中) 
7. nulljava

JSON语法规则

JSON的语法规则很是的简单,就是使用 
大括号’{}’, 
中括号’[]’, 
逗号’,’, 
冒号’:’, 
双引号’“”’。正则表达式

数据类型: 
嵌套对象、数组、字符串、数字、布尔值或空值。json

咱们在JSON解析中只有三中状况出现 
1.{} 解析’大括号’类型 
2. [ ] 解析是’中括号’类型 数组

3. 组合类型网络


代码举例:函数

package com.djx.JsonTest;
import org.json.JSONArray;
import org.json.JSONObject;

import javax.naming.Name;
import java.lang.String;
public class Test {
    public static void main(String[] args) {
        String s="{\"age\": 35,\"sex\": \"men\",\"dynasty\": \"唐朝\",\"name\": \"李白\",\"weight\": 63.5}";
        JSONObject jsonObject=new JSONObject(s);
        int str=jsonObject.getInt("age");
        System.out.println(str);
        String t="{\"name\":\"李白\",\"specialty\":[\"诗仙\",\"剑仙\",\"酒仙\"]}";
        JSONObject jsonObject1=new JSONObject(t);
        System.out.println(jsonObject1.getString("name"));
        JSONArray array=jsonObject1.getJSONArray("specialty");
        for (int i=0;i<array.length();i++){
            System.out.println(array.getString(i));
        }


    }
}
输出结果:

提示:学习

解释Json字符串的时候遵循一下两个原则:spa

原则一:遇到 {   } 用 JSONObject对象

原则二:遇到 [   ]  用 JSONArray

ip