Json相关1_Json的概念

一、一切数据都可以用三种方式表示

  • 标量(scalar)

    也就是一个单独的字符串(string)或数字(numbers).

    比如"北京"这个单独的词。

  • 序列(sequence)

    也就是若干个相关的数据按照一定顺序并列在一起,又叫做数组(array)或列表(List)

    比如"北京,上海"。

  • 映射(mapping)

    也就是一个名/值对(Name/value),即数据有一个名称,还有一个与之相对应的值,这又称作散列(hash)或字典(dictionary)

    比如"首都:北京"。

二、Json标准

  1. 并列数据的集合(数组)用方括号("[]")表示。

  2. 并列的数据之间用逗号(", ")分隔。

  3. 映射的集合(对象)用大括号("{}")表示。

  4. 映射用冒号(": ")表示。

三、示例

1.fastjson包
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.74</version>
        </dependency>
2.java代码
package main.cn.yang37.json;

import com.alibaba.fastjson.JSONObject;

import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;

/**
 * @Description:
 * @Class: JsonTest1
 * @Author: Yiang37
 * @Date: 2020/12/9 0:12
 * @Version: 1.0
 */
public class JsonTest1 {
    public static void main(String[] args) {

        List list = new LinkedList();
        list.add("12");
        list.add("12");
        System.out.println("list\t\t\t"+JSONObject.toJSON(list));

        Map map = new LinkedHashMap();
        map.put("k1", "v");
        map.put("k2", "v");
        System.out.println("map\t\t\t"+JSONObject.toJSON(map));

        List listContainMap = new LinkedList();
        listContainMap.add(map);
        listContainMap.add(map);
        System.out.println("listContainMap\t\t\t"+JSONObject.toJSON(listContainMap));

        Map mapContainList = new LinkedHashMap();
        mapContainList.put("myMap", listContainMap);
        System.out.println("mapContainList\t\t\t"+JSONObject.toJSON(mapContainList));
    }
}
3.运行结果
list			["12","12"]
map			{"k1":"v","k2":"v"}
listContainMap			[{"k1":"v","k2":"v"},{"k1":"v","k2":"v"}]
mapContainList			{"myMap":[{"k1":"v","k2":"v"},{"k1":"v","k2":"v"}]}
4.用工具格式化一下后两个
//listContainMap
[
    {
        "k1": "v",
        "k2": "v"
    },
    {
        "k1": "v",
        "k2": "v"
    }
]
//mapContainList	
{
    "myMap":
    [
        {
            "k1": "v",
            "k2": "v"
        }, {
            "k1": "v",
            "k2": "v"
        }
    ]
}
posted @ 2020-12-09 00:20  羊37  阅读(95)  评论(0编辑  收藏  举报