How to Get Value from JSON Object in Java Example2025 年 3 月 25 日 | 阅读 5 分钟 JSON 是一种数据交换格式。它是一种广泛使用、轻量级且与语言无关的格式。它可以将数据从 JSON 转换为 XML。Java 提供了大量的 JSON 包。借助这些包,我们可以检索或从 JSONObject 获取值。 我们使用了两个不同的 JSON 包org.json 和 org.json.simple。在本节中,我们将学习如何通过一个合适的示例从 Java 中的 JSONObject 获取值。 Java 中的 JSONObject 是什么?在 Java 中,JSONObject 是一个无序集合,它以名称-值对的形式包含数据。它表示为一对花括号括起来的字符串,名称和值之间用冒号分隔。其内部形式是一个对象,具有用于按名称访问值以及按名称添加和替换值的 get 和 put 方法。 在上面的示例中,first name、city 和 age 是名称,而 John、Florida 和 22 分别是它们的值。 Java JSONObject 类Java 提供了 JSONObject 类,它定义在 org.json 包中。它表示一个不可变的(不可更改的)JSONObject 值。对象值是一组无序的名称-值对。它还提供了 Map 来查看 JSON 对象名称-值映射,该映射是不可修改的。JSONObject 的值可以是Boolean、String、Number、JSONObject、JSONArray、JSONNumber、JSONString 等。 可以使用各种相应的访问器方法来访问这些 JSONObject 值。 get() 方法在找到值时返回该值,如果找不到值则抛出异常。而 opt() 方法则返回默认值而不是抛出异常。该值可能为 null。这是这两个方法之间的主要区别。因此,这两个方法对于从 JSONObject 获取值很有用。我们可以转换或查询由通用方法 get() 和 opt() 返回的对象。 JSONObject 类包含以下方法,我们可以使用它们从 JSONObject 获取值。 getBoolean() 方法该方法解析类型为 String 的参数名。它返回与参数相关的映射的布尔值。如果关联的映射是 JsonValue.TRUE,则返回 true;如果关联的映射是 JsonValue.FALSE,则返回 false。 语法 如果指定的名称没有映射,则抛出 NullPointerException。如果指定的名称映射不可分配给 JsonValue.TRUE 或 JsonValue.FALSE,则还抛出 ClassCastException。 getInt() 方法它用于获取 JsonNumber(name).intValue()。 该方法解析类型为 String 的参数名。它返回已解析参数的关联映射的整数值。 语法 如果指定的名称没有映射,则抛出 NullPointerException。如果指定的名称映射不可分配给 JsonNumber,则还抛出 ClassCastException。 getJsonArray() 方法它用于获取 JsonArray get(name)。 该方法解析类型为 String 的参数,其关联值将被返回。它返回已解析参数的关联映射的数组值。如果对象没有参数映射,则返回 null。 语法 如果指定的名称映射不可分配给 JsonArray,则抛出 ClassCastException。 getJsonNumber() 方法它用于获取 (JsonNumber)get(name)。 该方法解析类型为 String 的参数,其关联值将被返回。它返回已解析参数的关联映射的数字值。如果对象没有参数映射,则返回 null。 语法 如果指定的名称映射不可分配给 JsonNumber,则抛出 ClassCastException。 getJsonObject() 方法它用于获取 (JsonObject)get(name)。 该方法解析类型为 String 的参数,其关联值将被返回。它返回已解析参数的关联映射的对象。如果对象没有参数映射,则返回 null。 语法 如果指定的名称映射不可分配给 JsonObject,则抛出 ClassCastException。 getJsonString() 方法它用于获取 (JsonString)get(name)。 该方法解析类型为 String 的参数,其关联值将被返回。它返回已解析参数的关联映射的 String 值。如果对象没有参数映射,则返回 null。 语法 如果指定的名称映射不可分配给 JsonString,则抛出 ClassCastException。 getString() 方法它用于获取 getJsonString(name).getString()。 该方法解析类型为 String 的参数,其关联值将被作为 String 返回。它返回已解析参数的关联映射的 String 值。 语法 如果指定的名称没有映射,则抛出 NullPointerException。如果指定的名称映射不可分配给 JsonString,则还抛出 ClassCastException。 让我们创建一个程序,并使用上述方法从 JSON 对象中获取值。 注意:在使用以下代码之前,请下载 json-20200518.jar 文件并将其添加到您的项目中。![]() GetValueFromJsonExample.java 输出 ![]() 让我们使用另一个 JSON 库并从 JSONObject 获取值。在下面的程序中,我们使用了 json-simple 库。在使用以下程序之前,请下载 json-simple-1.1.1.jar 文件并将其添加到您的项目中。 ![]() GetValueFromJsonObjectExample.java 输出 ![]() |
Java 是一种流行的编程语言,用于在各种平台上开发应用程序。在处理日期时,通常需要提取特定信息,例如给定日期的星期几。在本节中,我们将讨论如何...
阅读 4 分钟
? 在 Java 编程世界中,构造函数是用于初始化对象的特殊方法。当使用 new 关键字创建对象时,会调用它们,并且它们负责设置对象的初始状态。构造函数通常是公共的,并且与...
阅读 3 分钟
? 对象显示现实世界的事物,并包含变量等数据及其方法等行为。对象使代码更加有条理,易于重用,并且有利于管理大型项目。Java 还使用重要的特性,如继承(它共享其特性)、封装...
阅读 8 分钟
在 Java 中,当我们处理 String 时,有时需要使用特定的字符集对字符串进行编码。编码是从一种格式到另一种格式转换数据的一种方式。String 对象使用 UTF-16 编码。UTF-16 的问题在于它不能...
阅读 3 分钟
图论中的一个重要问题是确定从一个顶点到另一个顶点的有向图的所有路径。它在路由、网络最优路径的决策制定以及一般情况下的多种用途中特别有用...
5 分钟阅读
String 类的 regionMatches() 方法有两种变体,可用于测试两个字符串区域是否匹配或相等。此方法有两种变体,即一种忽略大小写,另一种区分大小写。regionMatches() 方法用于...
阅读 4 分钟
在编程领域,识别数据集中的特定元素对于各种分析任务至关重要。其中一个问题是确定数组中的领导者元素。数组中的领导者定义为大于所有...
7 分钟阅读
在数组中找到差值最小的数对是 Java 中一个常见的算法问题。它涉及比较数对之间的差异,以找出差值最小的数对,Java 提供了多种解决方案来解决这一挑战。示例 1:输入:A[] = {4, 7,...
7 分钟阅读
ProcessBuilder 类用于在 Java 中创建操作系统进程。ProcessBuilder 类的每个实例都负责管理进程属性的集合。ProcessBuilder 类不能同步。在 JDK 5.0 之前,使用的是 Runtime.exec() 方法来...
7 分钟阅读
在本节中,我们将学习什么是 emirp 数,并创建 Java 程序来检查给定的数是否是 emirp 数。Emirp 数 Java 程序经常在 Java 编码测试中出现,以检查程序员的逻辑。Emirp 数 一个数...
阅读 2 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India