Guava 系列 - 比较器
1、自我实现的比较器例子
class Person implements Comparable<Person> {
private String lastName;
private String firstName;
private int zipCode;
public int compareTo(Person other) {
int cmp = lastName.compareTo(other.lastName);
if (cmp != 0) {
return cmp;
}
cmp = firstName.compareTo(other.firstName);
if (cmp != 0) {
return cmp;
}
return Integer.compare(zipCode, other.zipCode);
}
}
2、使用guava比较器
上面的代码比较冗长,而且容易出错
guava 提供一个 ComparisonChain 类用于比较,只要找到一个非0结果,即不相同就立即停止比较,以获得更好的性能
// 我们只需要通过 ComparisonChain 构建的比较器进行简单的比较即可
public