Java 在Gson中,{}.getType()语法意味着什么?
在Gson文档中,我运行了这个构造,用于将JSONified Spotify Artister对象列表转换回对象的ArrayList。我在onRestoreInstanceState()中使用它 然而,我从来没有见过声明后的{}。有人能给我解释一下这是什么意思吗?我知道getType()是一个成员类,但为什么{}Java 在Gson中,{}.getType()语法意味着什么?,java,json,gson,Java,Json,Gson,在Gson文档中,我运行了这个构造,用于将JSONified Spotify Artister对象列表转换回对象的ArrayList。我在onRestoreInstanceState()中使用它 然而,我从来没有见过声明后的{}。有人能给我解释一下这是什么意思吗?我知道getType()是一个成员类,但为什么{} Type type = new TypeToken<List<Artist>>() {}.getType(); mArtistsList = new Gso
Type type = new TypeToken<List<Artist>>() {}.getType();
mArtistsList = new Gson().fromJson(jsonSearchResults, type);
Type Type=new-TypeToken(){}.getType();
mArtistsList=new Gson().fromJson(jsonSearchResults,type);
{}
表示不重写任何方法的。这是您以前见过的另一个匿名类:
Runnable r = new Runnable() {
@Override
public void run() {
}
};
.getType()
返回一个字符串,Gson使用该字符串来标识将用于序列化和反序列化对象的类型适配器
请参见Gson如何使用此参数推断泛型类型参数;简短的版本是,它需要使用匿名类,否则将无法工作。请检查嘿,谢谢!在我看来,另一个问题与我刚才提出的问题没有直接关系,也没有那么简洁。所以,谢谢。@Kazinsky也是,是的,你的问题的答案隐藏在另一个较长的答案中,但它们的差异几乎不足以让我决定回答这个问题。