gpt4 book ai didi

java - 将 Java 对象打印为字符串

转载 作者:行者123 更新时间:2023-12-01 23:08:01 24 4
gpt4 key购买 nike

我想从 JSon String 转换为 Java Object 并将其打印到控制台。但它不起作用:

这是代码:

    try {
//From JSON String to Java-Object (Json encoding)
Person personObj = new Person();

JSONObject json2Java = new JSONObject("{\"id\":1,\"fullName\":\"name\",\"age\":22}");
personObj.setFullName(json2Java.getString("fullName"));
personObj.setAge(json2Java.getInt("age"));
personObj.setId(json2Java.getInt("id"));

System.out.println("Json2Java: " + personObj);
}
catch (JSONException e) {
throw new WebApplicationException(Response.status(Status.BAD_REQUEST)
.entity("Couldn't parse JSON string: " + e.getMessage())
.build());
}

这是我在控制台上得到的内容:

Json2Java: com.akapoor.ws.testws.model.Person@86fe26

你能告诉我我的错误在哪里以及我需要改变什么吗?

最佳答案

您的代码工作正常 - 但是要获取您要查找的内容,您需要重写 Person 对象中的 toString 方法。这是一个简单的实现:

public String toString() {
StringBuilder sb = new StringBuilder("Person:\n");
sb.append("ID: ").append(this.getId()).append("\n")
append("Full name: ").append(this.getFullName()).append("\n")
append("Age: ").append(this.getAge()).append("\n");
return sb.toString();
}

将其添加到您的 Person 对象并再次执行代码。

关于java - 将 Java 对象打印为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22483049/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com