gpt4 book ai didi

Java : How to use the `Comparator` interface

转载 作者:行者123 更新时间:2023-12-02 04:37:22 25 4
gpt4 key购买 nike

private class myComparator implements Comparator<Object>{

@Override
public int compareTo(Object obj1, Object obj1) {


if ((obj1.getNumber() - obj2.getNumber()) == 0) {
return 0;
}
if ((obj1.getNumber() > obj2.getNumber()) {
return 1;
}

return -1;
}

嘿,我不知道如何在我正在实现的 Comparator 类中实现此compareTo 方法。我正在尝试按升序比较两个对象的整数值。但我真的不知道我要去哪里

稍后,我将在另一个类中将该类称为 collections.sort(someList, myComparator) 。

最佳答案

首先,Comparator需要 compare方法,而不是compareTo 。由于您的类(class)实现了 Comparator<Event> ,该方法的参数应该是 Event s。

private class myComparator implements Comparator<Event>
{
@Override
public int compare(Event obj1, Event obj1) {
if (obj1 == null) {
if (obj2 == null) {
return 0;
} else {
return 1;
}
} else if (obj2 == null) {
return -1;
}
return obj1.getNumber().compareTo(obj2.getNumber());
}
}

请注意,我假设 getNumber()永远不会返回 null。如果它可以返回 null,则需要进行更多 null 检查。

关于Java : How to use the `Comparator` interface,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30589607/

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