在Java开发中,我们经常需要操作JSON格式数据,而Java提供了两个类来操作JSON数据,分别是JSONObject和JSONArray。
JSONObject与JSONArray使用方法解析
在Java开发中,我们经常需要操作JSON格式数据,而Java提供了两个类来操作JSON数据,分别是JSONObject和JSONArray。
JSONObject
JSONObject是JSON的对象表示法,在Java中,我们可以使用JSONObject来构建一个JSON对象。
创建JSONObject
我们可以使用如下方法来创建一个空的JSONObject:java
JSONObject jsonObject = new JSONObject();
添加一个键值对:java
jsonObject.put("name", "张三");
使用get方法获取name键对应的值:java
String name = jsonObject.getString("name");
使用toString方法输出JSONObject对象,转成字符串:java
String jsonString = jsonObject.toString();
解析JSONObject
解析一个JSON字符串到JSONObject对象:java
String jsonStr = "{\"name\":\"张三\",\"age\":18}";
JSONObject jsonObject = new JSONObject(jsonStr);
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
也可以把JSONObject转换为实体类:java
class User {
private String name;
private int age;
// 构造方法、Getter和Setter方法省略
}
JSONObject jsonObject = new JSONObject(jsonStr);
User user = new User();
user.setName(jsonObject.getString("name"));
user.setAge(jsonObject.getInt("age"));
JSONArray
JSONArray是JSON的数组表示法,在Java中,我们可以使用JSONArray来构建一个JSON数组。
创建JSONArray
我们可以使用如下方法来创建一个空的JSONArray:java
JSONArray jsonArray = new JSONArray();
向数组中添加一个字符串:java
jsonArray.put("北京");
// 或者
jsonArray.add("北京");
向数组中添加一个JSONObject对象:java
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "张三");
jsonObject.put("age", 18);
jsonArray.put(jsonObject);
向数组中添加一个JSONArray对象:java
JSONArray jsonArray1 = ...
jsonArray.put(jsonArray1);
解析JSONArray
解析一个JSON字符串到JSONArray对象:java
String jsonStr = "[\"北京\",\"上海\",\"广州\"]";
JSONArray jsonArray = new JSONArray(jsonStr);
String city = jsonArray.getString(0);
也可以把JSONArray转换为实体类列表:java
class City {
private String name;
// 构造方法、Getter和Setter方法省略
}
JSONArray jsonArray = new JSONArray(jsonStr);
List<City> cityList = new ArrayList<>();
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
City city = new City();
city.setName(jsonObject.getString("name"));
cityList.add(city);
}
示例说明
示例一:创建JSONObject对象并解析
```java
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "张三");
jsonObject.put("age", 18);
String jsonString = jsonObject.toString();
JSONObject jsonObject1 = new JSONObject(jsonString);
String name = jsonObject1.getString("name");
int age = jsonObject1.getInt("age");```
在这个例子中,我们首先创建了一个JSONObject对象,并向其中添加了name和age两个键值对,然后使用toString方法将JSONObject对象转为JSON字符串。接下来我们又创建了一个新的JSONObject对象,然后将JSON字符串反序列化到这个对象中,最后分别获取了name和age这两个键对应的值,实现了JSONObject的创建和解析。
示例二:创建JSONArray对象并解析
```java
JSONArray jsonArray = new JSONArray();
jsonArray.put("北京");
jsonArray.put("上海");
jsonArray.put("广州");
String jsonString = jsonArray.toString();
JSONArray jsonArray1 = new JSONArray(jsonString);
String city = jsonArray1.getString(0);
List
for (int i = 0; i < jsonArray1.length(); i++) {
cityList.add(jsonArray1.getString(i));
}```
在这个例子中,我们首先创建了一个JSONArray对象,并向其中添加了三个字符串元素,然后使用toString方法将JSONArray对象转为JSON字符串。接下来我们又创建了一个新的JSONArray对象,然后将JSON字符串反序列化到这个对象中,最后分别获取了第一个元素值,以及将JSONArray转化为List
本文标题为:JSONObject与JSONArray使用方法解析
基础教程推荐
- 示例解析Ant Design Vue组件slots作用 2023-07-10
- jquery如何改变html标签的样式(两种实现方法) 2024-01-21
- CKEditor编辑器allowedContent过滤器规则设置教程 2022-06-22
- 没时间学 Vue (2) 2023-10-08
- Layui Table 的列隐藏问题 2023-09-13
- 基于HTML5的可预览多图片Ajax上传 2023-01-20
- 关于 json:渲染中的错误:”TypeError:无法读 2022-09-16
- php – Laravel – 保存HTML Dom-Parser对数据库的响应 2023-10-26
- ajax向服务器端传值出现乱码问题 2022-11-22
- JavaScript中的Window窗口对象 2024-01-03