我目前正在制作GsonRequest,如下所示:
final GsonRequest gsonRequest =
new GsonRequest(url, People.class, null, new Response.Listener<People>() { ... }
但我的People类只有一个成员对象:Person of(s)。
public class People {
private List<Person> people;
}
我这样做是因为GsonRequest的参数调用了一个类(即People.class)。对我来说,创建一个只有一个成员对象的类只是一个其他对象的列表似乎很奇怪和愚蠢。但我提出的请求将返回多个人。那么,有更好的方法吗?我可以像我一样传递一个对象列表而不是一个组成的类吗?我的方式是有效的,但我不禁想到有更好的方法???
答案 0 :(得分:1)
您可以这样定义:
public class People extends List<Person> {
}
这样就行了,至少你没有定义一个成员类(你还需要进行API更改才能匹配)。
如果您想完全避开课程,也可以使用TypeToken<E>
:
new TypeToken<List<Person>>(){}.getType()
但是,您的GsonRequest类必须能够接受Type而不是类参数。