jsonobject 获取里面数据
时间: 2023-07-31 18:03:56 浏览: 76
要获取 JSON 对象中的数据,可以使用 JSONObject 类的 get() 方法或 opt() 方法,具体的操作如下:
1. 创建 JSONObject 对象:
```
String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
JSONObject jsonObject = new JSONObject(jsonString);
```
2. 使用 get() 方法获取数据:
```
String name = jsonObject.get("name").toString();
int age = jsonObject.getInt("age");
String city = jsonObject.get("city").toString();
```
3. 使用 opt() 方法获取数据:
```
String name = jsonObject.optString("name");
int age = jsonObject.optInt("age");
String city = jsonObject.optString("city");
```
注意:如果 JSON 对象中不存在对应的键,get() 方法会抛出 JSONException 异常,而 opt() 方法会返回默认值(null 或 0)。
相关问题
获取Object JsonResult里面的数据
假设你有一个 `JsonResult` 对象,可以通过以下步骤获取它里面的数据:
1. 使用 `getAsJsonObject()` 方法将 `JsonResult` 对象转换为 `JsonObject` 对象。
```java
JsonResult result = ...;
JsonObject jsonObject = result.getAsJsonObject();
```
2. 使用 `get()` 方法获取指定 key 对应的 value,返回值为 `JsonElement` 类型,需要进行类型转换。
```java
JsonResult result = ...;
JsonObject jsonObject = result.getAsJsonObject();
String name = jsonObject.get("name").getAsString();
int age = jsonObject.get("age").getAsInt();
```
3. 使用 `getAsJsonPrimitive()` 方法获取指定 key 对应的 value,返回值为 `JsonPrimitive` 类型,可以直接获取 value。
```java
JsonResult result = ...;
JsonObject jsonObject = result.getAsJsonObject();
String name = jsonObject.get("name").getAsJsonPrimitive().getAsString();
int age = jsonObject.get("age").getAsJsonPrimitive().getAsInt();
```
4. 使用 `has()` 方法判断指定 key 是否存在。
```java
JsonResult result = ...;
JsonObject jsonObject = result.getAsJsonObject();
boolean hasName = jsonObject.has("name");
boolean hasGender = jsonObject.has("gender");
```
获取AjaxResult中的数据
假设你有一个 `AjaxResult` 对象,可以通过以下步骤获取它里面的数据:
1. 使用 `get()` 方法获取指定 key 对应的 value,返回值为 `Object` 类型,需要进行类型转换。
```java
AjaxResult result = ...;
Object data = result.get("data");
if (data instanceof JsonObject) {
JsonObject jsonObject = (JsonObject) data;
String name = jsonObject.get("name").getAsString();
int age = jsonObject.get("age").getAsInt();
} else if (data instanceof String) {
String message = (String) data;
}
```
2. 使用 `getData()` 方法获取 `data` 对应的 value,返回值为 `Object` 类型,需要进行类型转换。
```java
AjaxResult result = ...;
Object data = result.getData();
if (data instanceof JsonObject) {
JsonObject jsonObject = (JsonObject) data;
String name = jsonObject.get("name").getAsString();
int age = jsonObject.get("age").getAsInt();
} else if (data instanceof String) {
String message = (String) data;
}
```
3. 使用 `has()` 方法判断指定 key 是否存在。
```java
AjaxResult result = ...;
boolean hasData = result.has("data");
boolean hasMessage = result.has("message");
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)