将两个整数与我自己的比较器进行比较

Bou*_*r00 2 java comparator

我正在学习如何在Java中使用Comparator接口,并且正在尝试编写自己的Comparator,它将比较Integer的方式有所不同(例如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;
    }
}
Run Code Online (Sandbox Code Playgroud)

编译器找不到compareTo(Integer)。

Mar*_*ers 5

更改

class MyComparator<Integer> implements Comparator<Integer>
Run Code Online (Sandbox Code Playgroud)

class MyComparator implements Comparator<Integer>
Run Code Online (Sandbox Code Playgroud)

在第一种情况下,您要声明一个类型为shadowing的参数java.lang.Integer