Java 创建泛型groupBy方法
我试图从我拥有的对象列表中创建泛型groupBy方法,因此我认为我的方法可以有如下签名:Java 创建泛型groupBy方法,java,generics,Java,Generics,我试图从我拥有的对象列表中创建泛型groupBy方法,因此我认为我的方法可以有如下签名: private Map<String, List<T>> groupBy(List<T> list, String fieldName) { private Map groupBy(列表,字符串字段名){ 但它不是编译。缺少类型T,如何修复它以进行编译?我想通过java反射调用字段名(getter)并将其分组并返回一个映射。您需要在开始时定义。有关详细信息,请查看 p
private Map<String, List<T>> groupBy(List<T> list, String fieldName) {
private Map groupBy(列表,字符串字段名){
但它不是编译。缺少类型T,如何修复它以进行编译?我想通过java反射调用字段名(getter)并将其分组并返回一个映射。您需要在开始时定义
。有关详细信息,请查看
private <T> Map<String, List<T>> groupBy(List<T> list, String fieldName) {
}
private Map groupBy(列表,字符串字段名){
}
您需要在开头定义
。有关详细信息,请查看
private <T> Map<String, List<T>> groupBy(List<T> list, String fieldName) {
}
private Map groupBy(列表,字符串字段名){
}
试试这个
private <T> Map<String, List<T>> groupBy(List<T> list, String fieldName) {
...
private Map groupBy(列表,字符串字段名){
...
试试这个
private <T> Map<String, List<T>> groupBy(List<T> list, String fieldName) {
...
private Map groupBy(列表,字符串字段名){
...
您需要在通用方法中声明类型参数
:
private <T> Map<String, List<T>> groupBy(List<T> list, String fieldName) {
// ^^^ declare T
//whatever
}
private Map groupBy(列表,字符串字段名){
//声明
//随便
}
您需要在通用方法中声明类型参数
:
private <T> Map<String, List<T>> groupBy(List<T> list, String fieldName) {
// ^^^ declare T
//whatever
}
private Map groupBy(列表,字符串字段名){
//声明
//随便
}
您需要创建一个(不仅仅是一个接受泛型类型的方法)
只需将
添加到private
之后:
private <T> Map<String, List<T>> groupBy(List<T> list, String fieldName) {....}
private Map groupBy(列表列表,字符串字段名){..}
您需要创建一个(不仅仅是一个接受泛型类型的方法)
只需将
添加到private
之后:
private <T> Map<String, List<T>> groupBy(List<T> list, String fieldName) {....}
private Map groupBy(列表列表,字符串字段名){..}
您缺少类型参数的定义:
private <T> Map<String, List<T>> groupBy(List<T> list, String fieldName) {
private Map groupBy(列表,字符串字段名){
您可能还对查看Guava的多重映射感兴趣,尤其是。您缺少类型参数的定义:
private <T> Map<String, List<T>> groupBy(List<T> list, String fieldName) {
private Map groupBy(列表,字符串字段名){
您可能还对Guava的多重地图感兴趣,尤其是地图