我有一个我想制作通用的功能。 我想要下面的代码
public String list(){
List<EMovieCategory> dataList = DBCompanyContent.getInstance().getDataByDocType(EMovieCategory.class);
return "";
}
类似
public String list(Class cls){
List<WHAT TO WRITE HERE > dataList = DBCompanyContent.getInstance().getDataByDocType(cls);
return "";
}
我无法弄清楚在List&lt; ***&gt;
中写什么答案 0 :(得分:1)
使用类型变量:
public <T> String list(Class<T> cls){
List<T> dataList = DBCompanyContent.getInstance().getDataByDocType(cls);
return "";
}
如果getDataByDocType
要求某个范围内的Class
实例,则可能需要绑定类型变量:
public <T extends SomeClass> String list(Class<T> cls) {
OTOH,如果你实际上没有使用它是T
s列表的事实:
public String list(Class<?> cls){
List<?> dataList = DBCompanyContent.getInstance().getDataByDocType(cls);
return "";
}
如果您不打算使用它,或者您甚至根本不需要变量:
public String list(Class<?> cls){
DBCompanyContent.getInstance().getDataByDocType(cls);
return "";
}
答案 1 :(得分:0)
<>
之间的部分是List将存储的数据类型。您将输入getDataByDocType(cls)
返回的数据类型。