Java JSONObject与JSONArray对象案例详解

Java JSONObject与JSONArray对象案例详解

在Java中,我们可以使用JSONObjectJSONArray对象来解析和构建JSON格式的数据。本文将详细讲解如何在Java中使用这两个对象。

什么是JSON?

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,适用于各种编程语言。它基于JavaScript语言的一个子集,严格地说,它不是一种独立的编程语言。

JSON格式的数据可以表示为一个键值对的集合,或者由多个键值对组成的集合的序列。对于Java程序员而言,我们可以使用JSONObjectJSONArray对象来处理JSON数据。

JSONObject对象

JSONObject对象表示一个JSON对象,它存储在一个Java Map中。我们可以使用.put()方法向JSONObject对象添加键值对,使用get()方法来获取值。

示例一

下面是一个简单的使用JSONObject对象的例子。假设我们有一个JSON对象表示一个人的信息,它包含姓名、年龄、地址三个属性。

import org.json.JSONObject;

public class JSONObjectExample {
    public static void main(String[] args) {
        JSONObject person = new JSONObject();
        person.put("name", "张三");
        person.put("age", 20);
        person.put("address", "北京市朝阳区");

        System.out.println(person);
    }
}

输出结果:

{"name":"张三","age":20,"address":"北京市朝阳区"}

以上代码演示了如何使用put()方法向JSONObject对象添加键值对,然后将其打印到控制台上。JSONObject对象内部使用的是Java Map结构,键值对的类型可以是任意类型。

示例二

下面是另一个JSONObject对象的例子。这个例子演示了如何从一个JSON字符串中解析出JSONObject对象,然后获取其中的属性值。

import org.json.JSONObject;

public class JSONObjectExample {
    public static void main(String[] args) {
        String jsonStr = "{\"name\":\"张三\",\"age\":20,\"address\":\"北京市朝阳区\"}";
        JSONObject person = new JSONObject(jsonStr);

        String name = person.getString("name");
        int age = person.getInt("age");
        String address = person.getString("address");

        System.out.println("姓名:" + name);
        System.out.println("年龄:" + age);
        System.out.println("地址:" + address);
    }
}

输出结果:

姓名:张三
年龄:20
地址:北京市朝阳区

以上代码演示了如何使用JSONObject的有参构造函数从JSON字符串中解析出JSONObject对象。我们可以使用getString()getInt()等方法获取属性值。

JSONArray对象

JSONArray对象表示一个JSON数组,它存储在一个Java List中。我们可以使用put()方法向JSONArray对象添加元素,使用get()方法来获取元素。

示例一

下面是一个简单的使用JSONArray对象的例子。假设我们有一个JSON数组表示一个人的多个信息,每个信息包含姓名、年龄、地址三个属性。

import org.json.JSONArray;
import org.json.JSONObject;

public class JSONArrayExample {
    public static void main(String[] args) {
        JSONArray arr = new JSONArray();

        JSONObject person1 = new JSONObject();
        person1.put("name", "张三");
        person1.put("age", 20);
        person1.put("address", "北京市朝阳区");
        arr.put(person1);

        JSONObject person2 = new JSONObject();
        person2.put("name", "李四");
        person2.put("age", 25);
        person2.put("address", "上海市浦东新区");
        arr.put(person2);

        System.out.println(arr);
    }
}

输出结果:

[{"name":"张三","age":20,"address":"北京市朝阳区"},{"name":"李四","age":25,"address":"上海市浦东新区"}]

以上代码演示了如何使用put()方法向JSONArray对象添加元素,然后将其打印到控制台上。JSONArray对象内部使用的是Java List结构,元素的类型可以是任意类型。

示例二

下面是另一个JSONArray对象的例子。这个例子演示了如何从一个JSON字符串中解析出JSONArray对象,然后获取其中的元素。

import org.json.JSONArray;
import org.json.JSONObject;

public class JSONArrayExample {
    public static void main(String[] args) {
        String jsonStr = "[{\"name\":\"张三\",\"age\":20,\"address\":\"北京市朝阳区\"},{\"name\":\"李四\",\"age\":25,\"address\":\"上海市浦东新区\"}]";
        JSONArray arr = new JSONArray(jsonStr);

        for (int i = 0; i < arr.length(); i++) {
            JSONObject person = arr.getJSONObject(i);

            String name = person.getString("name");
            int age = person.getInt("age");
            String address = person.getString("address");

            System.out.println("姓名:" + name);
            System.out.println("年龄:" + age);
            System.out.println("地址:" + address);
        }
    }
}

输出结果:

姓名:张三
年龄:20
地址:北京市朝阳区
姓名:李四
年龄:25
地址:上海市浦东新区

以上代码演示了如何使用JSONArray的有参构造函数从JSON字符串中解析出JSONArray对象。我们可以使用getJSONObject()等方法获取元素对象的值。

总结

本文介绍了如何使用Java中的JSONObjectJSONArray对象来处理JSON格式的数据。JSONObject对象表示一个JSON对象,它存储在一个Java Map中;JSONArray对象表示一个JSON数组,它存储在一个Java List中。可以通过使用Java内置的JSONObjectJSONArray类,来轻松地处理和生成JSON数据。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java JSONObject与JSONArray对象案例详解 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • Java SpringBoot核心源码详解

    Java SpringBoot核心源码详解 简介 本篇攻略主要讲解Java SpringBoot核心源码的相关内容,详细解析SpringBoot框架的设计和实现原理。同时,为了让读者更加深入理解,我们将通过两条示例代码来解释相关概念。 SpringBoot框架基础 SpringBoot框架基于Spring框架之上,通过提供许多默认配置和简化部署流程等功能,让…

    Java 2023年5月15日
    00
  • Java实现简单控制台版ATM系统

    Java实现简单控制台版ATM系统攻略 1. 需求分析 控制台版ATM系统主要需要实现以下功能: 用户登录、注册 存款、取款、查询余额 转账功能 2. 技术选型 本篇攻略使用Java语言实现控制台版ATM系统,使用了Java IO、集合等基础知识进行编写。在框架上,本篇攻略并未用到任何框架。 3. 代码实现 代码实现主要分为以下几个部分: 3.1 用户登录、…

    Java 2023年5月18日
    00
  • 一篇文章带你搞定JAVA泛型

    一篇文章带你搞定JAVA泛型 什么是泛型? Java 泛型(Generics)是 JDK5.0 引入的新特性。将类型作为参数进行传递即为泛型。泛型可以提高程序的安全性和可读性。 泛型的声明与使用 泛型的声明:使用尖括号 <> 定义一个类型参数,然后应用到类、接口或方法的参数、返回值等变量类型的定义当中。 public class MyClass&…

    Java 2023年5月26日
    00
  • Java实例化的几种方法总结

    Java实例化的几种方法总结 在Java中,对象是类的一个实例,而实例化则是创建这个实例的过程。Java提供了多种实例化对象的方法。以下是几种常见的实例化方法总结: 1. 使用new关键字 使用new关键字是最常见的实例化对象的方法。语法如下: ClassName objectName = new ClassName(); 其中,ClassName表示类的名…

    Java 2023年5月26日
    00
  • 响应式编程初探

    响应式 响应式系统(Reactive System) 具有以下特质:即时响应性(Responsive)、回弹性(Resilient)、弹性(Elastic)以及消息驱动(Message Driven)响应式系统更加灵活,松耦合,可伸缩 即时响应性 只要有可能, 系统就会及时地做出响应。 即时响应是可用性和实用性的基石, 而更加重要的是,即时响应意味着可以快速…

    Java 2023年4月17日
    00
  • maven利用tomcat插件部署远程Linux服务器的步骤详解

    Ok,首先需要确定一下使用的环境:Linux服务器、maven、tomcat。接下来就可以开始步骤了。 步骤 在Linux服务器上安装 tomcat以及在本地机器上安装maven。 配置tomcat用户,执行如下命令添加一个名为tomcat的用户并设置密码。 useradd tomcat passwd tomcat 配置maven的settings.xml文…

    Java 2023年6月2日
    00
  • Spring MVC策略模式之MethodArgumentResolver源码解析

    Spring MVC 策略模式之 MethodArgumentResolver 源码解析 在 Spring MVC 中,MethodArgumentResolver 是一个非常重要的组件,它用于将请求参数转换为控制器方法的参数。MethodArgumentResolver 是 Spring MVC 策略模式的一部分,它通过实现 resolveArgument…

    Java 2023年5月18日
    00
  • Java数据库操作库DButils类的使用方法与实例详解

    Java数据库操作库DButils类的使用方法与实例详解 一、概述 DButils是一款基于Java语言开发的数据库操作库,具有使用简单、功能丰富、高效性等特点。在Java开发中,使用DButils可以让我们更加方便地进行数据库操作,节省我们大量的时间和精力。DButils提供了一组用于执行SQL语句和映射结果集的API,除此之外,还提供了连接池和事务管理等…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部