我发现java.lang.Integer
的compareTo
方法实现如下:
public int compareTo(Integer anotherInteger) {
int thisVal = this.value;
int anotherVal = anotherInteger.value;
return (thisVal<anotherVal ? -1 : (thisVal==anotherVal ? 0 : 1));
}
问题是为什么要使用比较而不是减法:
return thisVal - anotherVal;
Integer.compare(thisVal, anotherVal)
代替写三元表达式。 - Stuart Marks