Java CustomComparator排序对象错误

Java CustomComparator排序对象错误,java,comparator,Java,Comparator,我一直在犯错误 The method sort(List<T>, Comparator<? super T>) in the type Collections is not applicable for the arguments (List<InterfaceMessage>, Folder.CustomComparator) 关于代码 @Override public void sortByDate(boolean ascending) { Co

我一直在犯错误

The method sort(List<T>, Comparator<? super T>) in the type Collections is not applicable for the arguments (List<InterfaceMessage>, Folder.CustomComparator)
关于代码

@Override
public void sortByDate(boolean ascending) {
    Collections.sort(messageList, new CustomComparator());
}

class CustomComparator implements Comparator<Message> {
    public int compare(Message message1, Message message2) {
        return message1.getDate().compareTo(message2.getDate());
    }
}
我试图比较列表中每个对象内的日期,以按日期排序。我对比较器还不熟悉,但我已经看到了很多我遵循的例子,但我的似乎不起作用?我知道我还没有做任何关于提升的事情,我只是想让基本的比较器工作


感谢您的帮助:

从错误消息中,变量messageList必须定义为List。但是,比较器使用类消息,这可能是InterfaceMessage的实现。但是,可能还有其他实现。因此,比较器无法可靠地处理messageList的元素

正如评论中所建议的那样,解决方案是:

class CustomComparator implements Comparator<InterfaceMessage> { /*...*/ }

从错误消息中,变量messageList必须定义为List。但是,比较器使用类消息,这可能是InterfaceMessage的实现。但是,可能还有其他实现。因此,比较器无法可靠地处理messageList的元素

正如评论中所建议的那样,解决方案是:

class CustomComparator implements Comparator<InterfaceMessage> { /*...*/ }
应该是

应该是


您的比较器必须实现比较器非比较器您的比较器必须实现比较器非比较器列出的解决方案是错误的,并且与注释不匹配。@谢谢您的提及,该死的复制paseerrors@SpaceTrucker-它是复制粘贴-列出的解决方案是错误的,并且与注释不匹配。@Necreaux感谢您的提及,该死的复制paseerrors@SpaceTrucker-它是复制粘贴-