Java 了解比较器的使用
在查看一个简单的比较器使用示例时:Java 了解比较器的使用,java,comparator,Java,Comparator,在查看一个简单的比较器使用示例时: Comparator<Developer> byName = new Comparator<Developer>() { @Override public int compare(Developer o1, Developer o2) { return o1.getName().compareTo(o2.getName()); } 它也不起作用 我如何正确地做到这一点? 有什么建议吗?当您使用比较器时,那么您使用的是参数化类型
Comparator<Developer> byName = new Comparator<Developer>() {
@Override
public int compare(Developer o1, Developer o2) {
return o1.getName().compareTo(o2.getName());
}
它也不起作用
我如何正确地做到这一点?
有什么建议吗?当您使用
比较器时,那么您使用的是参数化类型(在本例中:某物
)
compare
的方法符号需要与此类型匹配
因此,请尝试:
public int compare(Integer a, Integer b)
当您使用比较器时,您使用的是参数化类型(在本例中:Something
)
compare
的方法符号需要与此类型匹配
因此,请尝试:
public int compare(Integer a, Integer b)
关于第一个代码段,您到底不了解什么?可能它是一个?A.compare(A,b)
无法编译,因为您需要在A
的实例上调用compare
,而不是在类本身上(它不是静态方法)。尝试:newa()。比较(A,b)
。这里没有构造函数声明。关于第一个代码段,您到底不了解什么?可能它是一个?A.compare(A,b)
无法编译,因为您需要在A
的实例上调用compare
,而不是在类本身上(它不是静态方法)。试试:newa()。比较(A,b)
。这里没有构造函数声明。那么符号不应该是compare(整数A,整数b)
?请记住,在java中,int
和Integer
是不同的类型,即使它们有时由于自动装箱而可以互换使用。那么符号不应该是compare(整数a,整数b)
?请记住,在java中,int
和Integer
是不同的类型,尽管它们有时由于自动装箱而可以互换使用
public int compare(Integer a, Integer b)