私は車のリスト、特に自動車のリストを持っています。このオブジェクトのそれぞれは異なる属性を持ちます(車とモトは最高速度を持ちますが、二乗はありません)。特定の要素に基づいて並べ替えの配列
Moto BicicleとCarはVehicleのサブクラスであり、VehicleはComparableインタフェースを実装しています。
彼らは共通点があり、作成された年であり、それはその特定の属性を使用して配列を並べ替える方法です。デフォルトでは、javaは、オブジェクトが共通の別の属性、「色」に基づいてソートします。
この
は、コードは配列をソートするために使用されている。public static <T> void sortArray(Comparable<T>[] a) {
Arrays.sort(a);
}
私は、リストをソートするために使用したい属性を選択する方法はあります(これは、このいずれかである必要がありますか)? 事前に助けてくれてありがとう。
あなたのテックスカー、モトス、ビシクルはVehicleのサブクラスであり、VehicleはComparableインターフェイスを実装していると思います。この最後の点は、VehicleにcompareToメソッドがあることを意味します。そのメソッドを "color"ではなく "year"を使用するように変更します。 – RubioRic
http://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#sort(T[],%20java.util.Comparator) – ControlAltDel
ポイント3のこのリンクに続いて、以前のコメントで私が何を意味しているかの例を見つけてください。http://www.mkyong.com/java/java-object-sorting-example-comparable-and-comparator/ – RubioRic