JSON以及Gson解析【安装GsonFormat插件】FastJSON解析(JSONObject JSONArray)

本文介绍了JSON的定义、特点以及其组成部分JSONObject和JSONArray。详细讲解了如何使用JSONObject和JSONArray,包括解析JSON数据并显示在Spinner控件中的案例。接着,探讨了Gson解析的优势、安装GsonFormat插件、常用方法和步骤,提到了Gson的高效和面向对象的特点。此外,还介绍了FastJSON,阐述了其高性能和简单使用的特性,以及使用FastJSON的步骤和依赖。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JSON

定义

JSON是轻量级的基于JavaScript编程语言,使用键值对封装数据的数据交换格式。

外延

  1. JSONObject (JSON对象)
  2. JSONArray (JSON数组)

特点

  1. 轻量级易传输
  2. 跨平台支持多种语言
  3. 采用了压缩技术节省宽带
  4. 格式简单易读写

JSONObject

定义

JSONObject是以键值对方式存储数据的Json对象。

语法结构

在这里插入图片描述

JSONObject使用步骤

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

JSONArray

定义

JSONArray是多个Json对象组成的Json数组。

语法结构

在这里插入图片描述

使用JSONArray

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

案例:解析JSON数据,显示在Spinner控件中

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Gson解析

使用Gson的原因

当数据结构比较复杂时,使用Gson解析可以大大提高解析效率,弥补JSON解析的弊端。

定义

Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的Java 类库。

安装GsonFormat插件

在这里插入图片描述

Gson的常用方法

在这里插入图片描述

Gson解析的步骤

在这里插入图片描述

使用Gson

依赖

implementation’com.google.code.gson:gson:2.8.0’在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Gson解析数组

解析代码如下:
创建对应实体类:



public class Bean {

    public String name;
    public int age;
    public String sex;
    public String address;
}

解析代码:



        String strJson = "[\n" +
        "    {\n" +
        "        \"address\": \"中国\",\n" +
        "        \"age\": 30,\n" +
        "        \"name\": \"小明\",\n" +
        "        \"sex\": \"boy\"\n" +
        "    },\n" +
        "    {\n" +
        "        \"address\": \"加拿大\",\n" +
        "        \"age\": 20,\n" +
        "        \"name\": \"小雨\",\n" +
        "        \"sex\": \"girl\"\n" +
        "    }\n" +
        "]";
        Gson gson = new Gson();//创建Gson对象
        JsonParser jsonParser = new JsonParser();
        JsonArray jsonElements = jsonParser.parse(strJson).getAsJsonArray();//获取JsonArray对象
        ArrayList<Bean> beans = new ArrayList<>();
        for (JsonElement bean : jsonElements) {
        Bean bean1 = gson.fromJson(bean, Bean.class);//解析
        beans.add(bean1);
        }
        System.out.println(beans.size());
        System.out.println(beans.get(1).name);

反过来,如何将对象生成json了,代码如下:



        Map<String, Object> map = new HashMap<>();
        map.put("name", "小明");
        map.put("age", 30);
        map.put("address", "中国");
        map.put("sex", "boy");
        List<Map<String, Object>> list = new ArrayList<>();
        list.add(map);
        String s = new Gson().toJson(list);//生成jsonString
        System.out.println(s);

Gson的特点

  1. 解析效率高
  2. 代码量少使用简洁
  3. 解析是面向对象
  4. 数据传递比较方便

FastJson

FastJson使用简单,解析速度快,性能高,当JSON数据量比较大时,FastJson是理想的解析方式。

定义

FastJSON是阿里巴巴提供的,用Java语言编写的高性能的JSON类库。

使用步骤

在这里插入图片描述

使用FastJSON

依赖

implementation’com.alibaba:fastjson:1.2.55’
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

FastJSON的特点

在这里插入图片描述
JSON(JSONObject JSONArray) Gson解析以及FastJSON解析就先到这了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值