本文主要是介绍gson引用泛型解析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
转载:http://www.jianshu.com/p/e740196225a4
android需要跟服务端交互数据,返回数据时json数据,需要解析,引用泛型很大程度上简化代码的解析。
1、引入jar:
compile 'com.google.code.gson:gson:2.7'
2、返回数据类型大致类型:
(1){“code”:”0”,”message”:”success”,”data”:[]} 一条数据
(2){“code”:”0”,”message”:”success”,”data”:{}} data中包含多条数据
3、创建实体类
//返回的数据code、message是固定的,具体的data值不同,用泛型表示
public class Result<T> {public int code;public String message;public T data;
}
4、解析
String json = "{..........}"; //要解析的json字符串
Gson gson=new Gson();//**解析数据类型(1)** {"code":"0","message":"success","data":[]}
Type userType=new TypeToken<Result<User>>(){}.getType();
Result<User> userResult=gson.fromJson(json,userType);
User user=userResult.data;//**解析数据类型(2)** {"code":"0","message":"success","data":{}}
Type userType=new TypeToken<Result<List<User>>>(){}.getType();Result<List<User>> userListResult=gson.fromJson(json,userType);
List<User> userList=userListResult.data;
使用泛型就不需要创建多个实体类。
这篇关于gson引用泛型解析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!