gpt4 book ai didi

java - Gson - 放置和获取复合对象的 ArrayList

转载 作者:行者123 更新时间:2023-11-29 05:08:52 24 4
gpt4 key购买 nike

我有一个 NameAndPostion 类,我将在其中存储用户的姓名和职位。我已经创建了 NameAndPosition 对象的 ArrayList

ArrayList<NameAndPosition> LocSenders = new ArrayList<NameAndPosition>();

现在我已经使用 Gson 库将 LocSenders 转换为 JSON 字符串

Gson gson = new Gson();
String json = gson.toJson(LocSenders);

我进行此转换是为了将 LocSenders 保存在共享首选项中。
现在我想检索使用 Gson JSON 转换存储的“LocSenders”中的所有对象。

我想使用 Gson 库来完成这项工作。
我没有得到 Gsons 方法 gson.fromJson(json, classOfT)。那么如何正确地做到这一点呢?

NameAndPostion.java

public class NameAndPosition {

private String name = "";
private LatLng position = null;


public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public LatLng getPosition() {
return position;
}
public void setPosition(LatLng position) {
this.position = position;
}

}

提前致谢。

最佳答案

这是使用 gson 转换为 JSON 和从 JSON 转换的示例。

//Convert to JSON
System.out.println(gson.toJson(employee));

//Convert to java objects
System.out.println(gson.fromJson("{'id':1,'firstName':'Lokesh','lastName':'Gupta','roles':['ADMIN','MANAGER'],'birthDate':'17/06/2014'}"
, Employee.class));

反序列化集合

List<Employee> yourClassList = new Gson().fromJson(jsonArray, Employee.class);

对于通用集合。

Type listType = new TypeToken<ArrayList<YourClass>>() {
}.getType();
List<YourClass> yourClassList = new Gson().fromJson(jsonArray, listType);

您也可以引用下面的链接。

Google Gson - deserialize list<class> object? (generic type)

关于java - Gson - 放置和获取复合对象的 ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29426062/

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