ホームページ > Java > &#&チュートリアル > JavaでArrayList値を使用してHashMapをソートする方法は?

JavaでArrayList値を使用してHashMapをソートする方法は?

DDD
リリース: 2024-11-28 00:26:11
オリジナル
109 人が閲覧しました

How to Sort a HashMap with ArrayList Values in Java?

Java で HashMap をソートする方法

提供される HashMap は、キーと ArrayList の間のマッピングです。この構造を並べ替えるには、TreeMap を使用するか、ArrayList 値で並べ替えるためのカスタム コードを作成するという 2 つのオプションがあります。

オプション 1: TreeMap を使用する

必要な場合Map インターフェイスは必須ではないため、代わりに TreeMap の使用を検討してください。 TreeMap はキー間の自然な順序を維持し、キーと値のペアへの並べ替えられたアクセスを提供します。

オプション 2: ArrayList 値によるカスタム並べ替え

次の基準に基づいて HashMap を並べ替えます。 ArrayList 値には、次のコードを使用できます:

// HashMap to be sorted
Map<String, ArrayList<Integer>> unsortedMap = new HashMap<>();

// Create a list to store the sorted values
List<Integer> sortedValues = new ArrayList<>();

// Iterate over the HashMap values and extract the ArrayLists
for (Map.Entry<String, ArrayList<Integer>> entry : unsortedMap.entrySet()) {
    sortedValues.addAll(entry.getValue());
}

// Sort the values in ascending order
Collections.sort(sortedValues);

// Create a new HashMap with the sorted values
Map<String, ArrayList<Integer>> sortedMap = new HashMap<>();
for (Map.Entry<String, ArrayList<Integer>> entry : unsortedMap.entrySet()) {
    sortedMap.put(entry.getKey(), new ArrayList<>( // Sorted list
        sortedValues.subList(0, entry.getValue().size())));
    sortedValues.subList(0, entry.getValue().size()).clear();
}
ログイン後にコピー

以上がJavaでArrayList値を使用してHashMapをソートする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート