はオブジェクトは異なる値に基づいて順序付けを行う複数の比較メソッドを持つことができますか?
public Song(){
String artist, title;
StringBuilder lyrics;
int rank;
}
のような歌のオブジェクトは、それは一種の特定のフィールドで、複数のコレクションに応じて使用、方法を比較することは可能です私が持っていると言いますか?このオブジェクトには、アーティスト名とタイトル値に基づいたオーダーの比較メソッドが既に用意されており、ランクに基づいて注文することができます。
私の現在のプロジェクトでは、ソングの歌詞の検索を実行し、高いものから低いものへの一致リストを返す必要があります。 PriorityQueueを使用してランク値に基づいて一致を保持したい。
通常、ソングとランクを保持する別のオブジェクトを作成するだけですが、このプロジェクトは教授が提供するGUIインターフェイスにプラグインするだけでなく、結果をSong []配列に渡す必要がありますが、最初の10の値はRank、Artist、Titleとなります。
toArray()を使用してキューを変換できますが、Songオブジェクト以外のものを格納するために使用すると、ArrayStoreExceptionがスローされます。
これは可能ですか、または既存の比較方法を変更して整数値でソートする必要がありますか?
これは私がやったことでは、(Oで行われている優先度つきキューに項目を挿入する魅力 – Jason