用我自己的比较器比较两个整数



我正在学习如何在java中使用Comparator接口,我正在尝试编写自己的Comparator,它可以以不同的方式比较整数(例如3>5)。我有问题,有人能告诉我的代码出了什么问题吗?

import java.util.*;
import java.lang.*;
class MyComparator<Integer> implements Comparator<Integer>
{
    public int compare(Integer a, Integer b)
    {
        if(a.compareTo(b)>0)
        return -1;
        else if(a.compareTo(b)<0)
            return 1; 
        else 
            return 0;
    }
}

编译器找不到compareTo(Integer)。

更改

class MyComparator<Integer> implements Comparator<Integer>

class MyComparator implements Comparator<Integer>

在第一种情况下,您将声明一个类型参数,该参数正在遮蔽java.lang.Integer

最新更新