java泛型 public T 怎么传入要返回的泛型对象

风行傲天 2019-08-17 10:39:21
比如我要查询一些东西,根据传入的泛型返回指定泛型结果

public <T> T querylist(Query query) {

// 查询日志
List<QueriedLog> logList = getLogsResponse.GetLogs(query);
// 保存查询结果
List<T> resultList = new ArrayList<>();
if (null != logList && logList.size() > 0) {
for (QueriedLog log : logList) {
resultList.add(JSON.parseObject(log.GetLogItem().ToJsonString(), new TypeReference<T>() {
}));
}
}

return (T) resultList;
}

用这个方法是用来查询日志,根据参数查询日志返回不同的日志结果对象,最终以list<T> 返回给调用者,怎么通过传入要封装的泛型T来封装数据,不考虑在类名上加<T>
...全文
1261 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
风行傲天 2019-09-24
  • 打赏
  • 举报
回复
引用 1 楼 对梦想的牵挂 的回复:
在你的查询参数Query上加个泛型:Query<T>
这种容易,我想说的是 public <T> T querylist(Query query) 变为 public <T> T querylist(T t) 这种,来通过参数决定泛型类型
对梦想的牵挂 2019-08-21
  • 打赏
  • 举报
回复
在你的查询参数Query上加个泛型:Query<T>

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧