我有一个像下面的字符串
MyString中
[{"id":123,"name":"Abc"},{"id":124,"name":"EDF"}]
我需要使用Set
将其转换/映射到我的班级(Test)测试
public class Test {
int id;
String name;
}
我尝试过以下方法,但没有成功。
Set<Test> meds = (Set<Test>) (Object) MyString;
例外是
java.lang.ClassCastException:java.lang.String无法强制转换为java.util.Set
答案 0 :(得分:0)
这是一个json对象,您需要使用解析器。例如,查看GSON。
答案 1 :(得分:0)
使用Jackson库将String转换为对象集。
您无法直接转换它。
TypeReference<Set<Test>> ref = new TypeReference<Set<Test>>() {};
try {
new ObjectMapper().readValue("[{\"id\":123,\"name\":\"Abc\"},{\"id\":124,\"name\":\"EDF\"}]", ref);
} catch (IOException ignored) {
// stub
}
当然不要忘记将getter和setter添加到Test类
中