public int compareTo(Name other) {
int result = this.familyName.compareTo(other.familyName);
if (result == 0) {
result = this.firstName.compareTo(other.firstName);
}
return result;
}
我无法理解代码的内容,如何用它来比较名称。
答案 0 :(得分:0)
如果姓氏相同,则比较姓氏。
基本上“分组”姓氏。
答案 1 :(得分:0)
这是实现compareTo
(请参阅https://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html)接口的类的Comparable
方法。如果对象相同,则compareTo
的返回值定义为0
;如果参数字典更大,则< 0
,如果参数较小,则> 0
。
此处Name
对象的比较结果将委托给compareTo
属性的familyName
方法。这意味着将当前familyName
对象的Name
属性与参数的familyName
属性进行比较。仅当两个compareTo
对象实例的familyName
属性相同时,才会进行第二次Name
检查。如果是这种情况,则会比较firstName
。