Comparator当两种类型相等时,您的初始实现会因未正确处理(即返回0)而违反s 的一般合约.
Comparator
而不是试图自己实现两个整数之间的比较逻辑,为什么不让它Integer做最好的事情呢?
Integer
return Integer.compare(a.getType(), b.getType());