使用泛型在java上查找重复项

使用泛型在java上查找重复项,java,Java,我是泛型新手,希望使用泛型查找重复数据。因此,我尝试如下: import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class RemoveDuplicate { public static void main(String[] args) { Integer[] i= {12,12,12,12,5,2,

我是泛型新手,希望使用泛型查找重复数据。因此,我尝试如下:

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class RemoveDuplicate {
    
    public static  void main(String[] args) {
        Integer[] i= {12,12,12,12,5,2,42,4,2,5,3,35,3,1,23,54,44};
        removeDuplicates(i);
    }
    
    public static <T extends Number> T[] removeDuplicates(T[] list) {
        Map<T,Integer> duplicateCounr=new HashMap<T,Integer>();
        for(T t:list) {
            
           Integer x=duplicateCounr.get(t);
          
           if(x==null) {
               duplicateCounr.put(t,1); 
           }
           else {
               Integer count=duplicateCounr.get(t);
               duplicateCounr.put(t,++count); 
           }
        }
        List<? extends Number> nList=new ArrayList<>();
        
        for (Map.Entry<T, Integer> entry : duplicateCounr.entrySet()) {
            T key = entry.getKey();
            Integer v = entry.getValue();
            if(v>1) {
                nList.add(key);
                System.out.println("Duplicate" + key + ", Count: " + v);
            }
            
        }
        return null;
    }

}
import java.util.ArrayList;
导入java.util.HashMap;
导入java.util.List;
导入java.util.Map;
公共类移除副本{
公共静态void main(字符串[]args){
整数[]i={12,12,12,5,2,42,4,2,5,3,35,3,1,23,54,44};
移除的副本(i);
}
公共静态T[]移除的副本(T[]列表){
Map DuplicateConner=新的HashMap();
对于(T:列表){
整数x=duplicateConner.get(t);
如果(x==null){
重复输入(t,1);
}
否则{
整数计数=DuplicateConner.get(t);
重复计数输入(t,++计数);
}
}

List您无法添加到此类型的列表,因为您不知道要传递的对象类型

List<? extends Number> nList=new ArrayList<>();
列表
List<T> nList=new ArrayList<>();