最近Android开发遇见了关于泛型的问题,服务器端返回的数据有些数据段是一样的,但有的不一样,所以就想用泛型来实现,如下:
这个是登录的返回结果:
这个是注册的返回结果:
可以看到,data的数据是不一样的,其他接口也是,所以data就想用泛型来封装,如下:
但是因为Java的泛型的一些原因(详情可自己百度,我也是百度的,不是很秦楚,新手一枚),导致在解析返回数据中的泛型的时候一直报错。像com.google.gson.internal.LinkedTreeMap cannot be cast to my object这个错误,大概就是将解析的数据编程了LinkedTreeMap,然后你用自己的JavaBean去解析时类型不对应,不能替代。
网上找了很多方法,大多是用Type啥啥啥的,因为自己是新手,也不是很理解&