作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我有这两种方法:
private List<Song> toSongList(String json) {
ObjectMapper mapper = new ObjectMapper();
List<Song> list = null;
list = mapper.readValue(json, mapper.getTypeFactory()
.constructCollectionType(List.class, Song.class));
return list;
}
private List<Interpreter> toInterpreterList(String json) {
ObjectMapper mapper = new ObjectMapper();
List<Interpreter> list = null;
list = mapper.readValue(json, mapper.getTypeFactory()
.constructCollectionType(List.class, Interpreter.class));
return list;
}
我调用:
List<Song>songs = toSongList(jsonS);
List<Interpreter>interpreter = toInterpreterList(jsonI);
但是我想要一个单一的方法,我可以这样调用它:
List<Song>songs = toList(Song.class, jsonS);
List<Interpreter>interpreter = toList(Interpreter.class, jsonI);
我怎样才能做到这一点?
最佳答案
这应该有效:
private <T> List<T> toList(Class<T> clazz, String json) {
ObjectMapper mapper = new ObjectMapper();
List<T> list = mapper.readValue(json, mapper.getTypeFactory()
.constructCollectionType(List.class, clazz));
return list;
}
关于java - Java 中的泛型方法返回参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30014006/
我是一名优秀的程序员,十分优秀!