1
この質問はリストを並べ替えることについてです。特定の順序でリストのリストを並べ替える
私は車
List<Vehicle> getRandomVehiclesList() {
return fetchVehicles();
//returns List <Car>, List<Bus>, etc
};
車を取得するための一般的な方法は車することができ、オートバイ、バス、トラック、SUVなど
Car extends Vehicle
Bus extends Vehicle
は、私は5回getRandomVehiclesListを(呼び出すしたいとしてい)、結果のリストを特定の順序でソートします。
---------------------------------
LISTの順にする必要があります
List<Car>
List<Truck>
List<SUV>
List<Bus>
List<Motorcycle>
---------------------------------
が、その結果を返すことができますこの順序または他のランダムな順序。彼らは上に示した順序(車、トラック、SUV、バス、オートバイ)
を簡素化するために使用することができますRxJavaに一致するよう
List<Bus>
List<Motorcycle>
List<Truck>
List<Car>
List<SUV>
すべてのリストをソートするための最良の方法は何ですか?
'の間に違いはありませんList 'と' List 'は実行時には両方とも' List'sです。これを実行できる唯一の方法は、リストからエレメントを選択して、可能なタイプを判別し、その基準でソートすることです。もちろん、あなたのリストが空であるか、 'List 'を持っていれば、それは 'Car'と' Truck'の両方を含むことができるので、難しいです。 –
どうやってgetRandomVehiclesList ***メソッドを呼び出すことができますか?***車やトラックのみ返されます??、彼らはすべて同じインターフェイスです車 –
車やトラックのみを返すことが保証されています。多分Multipapのようなリストのリストにそれらを追加し、インデックスに基づいて順序を教える新しいコンパレータでソートすることを考えていました。どう思いますか? –