嗨,我有下一个类
public class ApiResponse<T extends ApiResponseData >
何时 T
是 ApiResponseData
的一种类型,但有时我收到的是列表而不是对象,在这种情况下我需要 T
从 ApiResponseData
开始扩展或List<ApiResponseData>
怎么能做到这一点?
我的尝试
public class ApiResponse<T extends ApiResponseData || T extends List<ApiResponseData>>
最佳答案
我认为您对泛型类型参数的用途存在根本性的误解。为什么您认为需要更改类型参数以适应列表?
为什么这样的东西还不够?
class ApiResponse<T extends ApiResponseData>
{
final List<T> data;
ApiResponse(T datum)
{
data = Collections.singletonList(datum);
}
ApiResponse(List<T> data)
{
this.data = data;
}
}
关于java - 如何表明泛型类是从一个类或另一个类扩展而来的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55651249/