java 中有一个gson的包可以用处理json 假设有下面这样一个json字符串,如何转义dn 对象,并遍历users的项
{"department":"A 部门","users":[{"name":"Jim",age: 20},{{"name":"Bob",age: 40}}]
java用gson将复杂的json字符串转为对象
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
恐怖如斯恐怖如斯啊 2025-01-19 16:48关注以下回复参考:皆我百晓生、券券喵儿等免费微信小程序作答:
首先,你的JSON字符串存在语法错误,它应该是这样的:
{ "department": "A 部门", "users": [ {"name": "Jim", "age": 20}, {"name": "Bob", "age": 40} ] }你可以使用Gson库来解析这个JSON字符串为一个Java对象。假设你有一个对应的Java类来表示这个结构,如下:
DepartmentUser.java:
public class DepartmentUser { private String department; private List<User> users; // getters and setters... }User.java:
public class User { private String name; private int age; // getters and setters... }然后你可以使用Gson来解析JSON字符串:
import com.google.gson.Gson; import java.util.List; public class Main { public static void main(String[] args) { String json = "..."; // 你的JSON字符串,修正了语法错误后的版本。 Gson gson = new Gson(); DepartmentUser departmentUser = gson.fromJson(json, DepartmentUser.class); System.out.println(departmentUser.getDepartment()); // 输出部门名称 "A 部门" List<User> users = departmentUser.getUsers(); // 获取用户列表,然后你可以遍历这个列表。例如: for (User user : users) { System.out.println("Name: " + user.getName() + ", Age: " + user.getAge()); // 输出每个用户的名字和年龄。 } } }这样你就可以将复杂的JSON字符串转换为Java对象,并遍历其中的项了。注意在使用Gson之前,你需要确保已经添加了Gson的依赖到你的项目中。如果你使用的是Maven,你可以在pom.xml文件中添加如下依赖:
<dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>版本号</version> <!-- 请使用最新版本 --> </dependency>解决 无用评论 打赏 举报