【发布时间】:2018-05-11 14:37:55
【问题描述】:
我很难找到一个很好的答案。我找到了 this one about custom comparators,但不完整:
class YourClass { static Comparator<YourClass> getAttribute1Comparator() { return new Comparator<YourClass>() { // compare using attribute 1 }; } static Comparator<YourClass> getAttribute2Comparator() { return new Comparator<YourClass>() { // compare using attribute 2 }; } }
应该可以,但我不知道比较部分是如何工作的。这是我的课:
package ZVCVolkel_Logic;
import java.util.Comparator;
public class Vliegtuig implements Comparator<Vliegtuig>{
private String naam;
private String type;
private String status;
private Hangaar hangaar;
public Vliegtuig(String naam, String type, String status, Hangaar hangaar){
this.naam = naam;
this.type = type;
this.status = status;
this.hangaar = hangaar;
}
}
现在我需要一个用于status 和Hangaar.getName() 的比较器。有人可以帮忙吗?
不是那个,他只有一个比较器。我也可以做到这一点,但不能在 1 个班级中使用 2 个不同的班级。
【问题讨论】:
-
问题是?
-
您阅读文档了吗?比较非常明确。
-
如何为 status 和 Hangaar.getName() 做一个比较器
-
你的班级
Vliegtuig也应该实现Comparable而不是Comparator -
@Code-Apprentice 我认为这不会解决 OP 的问题——OP 需要两个比较器,而不是一个 Comparable。
标签: java comparator