因此,我有一个包含两个数字的类,更确切地说是X
和Z
。我将其存储在TreeMap
上,它需要键类实现Comparable
。问题是,如何将X
和Z
与compareTo()
方法上的其他类进行比较?
我已经尝试将两个类的X
和Z
整数相加并将它们与Integer.compare()
进行比较,但这不是一个好的解决方案,因为如果{{1} }和X
被切换,将以相同的结果结束。
Z
答案 0 :(得分:0)
解决了:
@Override
public int compareTo(@Nonnull Position2D position2D) {
int xComparison = Integer.compare(this.getX(), position2D.getX());
int zComparison = Integer.compare(this.getZ(), position2D.getZ());
return xComparison != 0 ? xComparison : zComparison;
}
特别感谢@harold。