異なる型のオブジェクトの順序比較が今回のテーマ。 Javaの場合、オブジェクトの順序を比較する王道はふたつある。 ひとつはjava.lang.Comparable *1(こんぺあらぶる)を実装する「自然順序付け」と呼ばれる方法。 public class A implements Comparable<A> { int a; @Override public int compareTo(A o) { return this.a - o.a; } } もうひとつはjava.util.Comparator (こんぱれーたー)を用いる方法。*2 public class MyComparator implements Comparator<A> { @Override public int compare(A o1, A o2) { return o1.a - o2.a; } } 見て分かるよう
![異型のオブジェクト比較 - プログラマーの脳みそ](https://cdn-ak-scissors.b.st-hatena.com/image/square/2625e351741f4f0d9fa2752ee6063a0265770187/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2FN%2FNagise%2F20110401%2F20110401161401.jpg)