Gson 解析集合泛型 简易demo
- 先定义一个实体类FilterInfo
public class FilterInfo {
/**
* 特效code
*/
private String code;
/**
* 特效名
*/
private String name;
/**
* 特效示图
*/
private String cover;
}
解析集合泛型, 有如下两种
1)使用 fromJson(String json, Class classOfT) 解析
public static void main(String[] args) {
Gson gson = new Gson();
String json = "[\n" +
" {\n" +
" \"code\": \"1\",\n" +
" \"name\": \"1\",\n" +
" \"cover\": \"1\"\n" +
" },\n" +
" {\n" +
" \"code\": \"1\",\n" +
" \"name\": \"1\",\n" +
" \"cover\": \"1\"\n" +
" }\n" +
"]";
List<FilterInfo> o = gson.fromJson(json, List.class);
System.out.println(gson.toJson(o));
}
2)使用 fromJson(String json, Type typeOfT) 解析
public static void main(String[] args) {
Gson gson = new Gson();
String json = "[\n" +
" {\n" +
" \"code\": \"1\",\n" +
" \"name\": \"1\",\n" +
" \"cover\": \"1\"\n" +
" },\n" +
" {\n" +
" \"code\": \"1\",\n" +
" \"name\": \"1\",\n" +
" \"cover\": \"1\"\n" +
" }\n" +
"]";
List<FilterInfo> o = gson.fromJson(json, new TypeToken<List<String>>() {
}.getType());
System.out.println(gson.toJson(o));
}