マップで構成された複雑なオブジェクトのラベルを並べ替える際に問題があります。まあjava内の他のマップ内のマップのセットをソートする方法は?
Map<Class<? extends Fiche>, Map<String, Map<Family, Set<Map<ObjectField, DetailsField>>>>> Fields = new HashMap<>();
、私は並べ替えしようとしていることは、フィールドのラベルが含まれている列挙型であるObjectField
キーは、これをソートすることによって、私はアルファベット順にラベルを取得しますされています。
問題は、ObjectField
とDetailsField
を含むマップにアクセスする方法がわからないことです。フィールドには唯一のオブジェクトがあります。
私はJava 8でMapをソートする方法について知りましたが、Integerのソートには問題があり、オブジェクトマップがあります。誰かがこれを解決するアイディアを持っていますか?
ありがとうございます。
HashMapは、独自のアルゴリズムを使用してストアの場所を決定するため、通常、要素を並べ替えるために悪い選択です。 – MaxZoom
新しいデータ構造を作成するべきかどうか疑問に思っています。ある抽象レベル。パラメータ化された型があなたを混乱に導いているようです。 – user489041
@MaxZoom私は完全にあなたに同意します、私はtreeMapによって最後のマップを置き換えることを考えていますが、コードに何も問題がないかどうかはわかりません。 – Chinovski