gpt4 book ai didi

java - 需要帮助理解此方法

转载 作者:行者123 更新时间:2023-12-01 23:12:16 24 4
gpt4 key购买 nike

我在添加 java 泛型的过程中遇到了这段旧代码,我不明白这里发生了什么以及需要更改什么。

static void sortByDate( List list)   throws Exception
{
class MyComparator implements Comparator {

public int compare(Object o1, Object o2) {

RQEntry o11 = (RQEntry) o1;
RQEntry o22 = (RQEntry) o2;

int cc = ((String)o11.getHandledDate() ).compareTo(o22.getHandledDate() );

return (cc < 0 ? -1 : cc > 0 ? 1 : 0);
}
};

Collections.sort(list, new MyComparator());
}

问题 1:有人可以解释一下此方法如何进行比较吗?

问题 2:应传递哪些泛型类型参数才能符合 Java 5 标准?

问题 3:如何仅通过创建 MyComparator 的新实例来调用 compare 方法?

更新:

刚刚找到这个链接,它最终帮助我理解了这段代码:http://www.digizol.com/2008/07/java-sorting-comparator-vs-comparable.html

最佳答案

如果您有 List<RQEntry>您现在可以使用此比较器对其进行排序。
RQEntry将根据对象的处理日期进行比较。

这就是这里调用所做的事情。

Collections.sort(list, new MyComparator());

在幕后,当排序算法需要比较时
两个RQEntry对象,它会调用compare你的方法
比较器。仅此而已。

关于java - 需要帮助理解此方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21732357/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com