HashMapはキーの下に複数の値を掛ける手法を実現

標準の Java Map インターフェイスでは、キー (キー) は値 (値) にのみマッピングできます。これは、一般的な Map 実装 (HashMap、TreeMap など) では、1 つのキーは 1 つの値にのみ対応し、1 つのキーの下にぶら下がっている複数の値はサポートされていないことを意味します。

ただし、キーを複数の値に関連付けることができるデータ構造を実装する場合は、特別な実装を使用するか、既存のデータ構造を拡張できます。一般的には、リスト (List) またはコレクション (Set) を使用して複数の値を保存し、このリストまたはコレクションを値としてキーに関連付けます。これにより、実際には 1 対多のマッピング関係が実装されます。

たとえば、HashMap複数の値をキーに関連付けることができる構造を実装するために使用できます。

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class MultiValueMapExample {
    
    
    public static void main(String[] args) {
    
    
        Map<String, List<String>> multiValueMap = new HashMap<>();
        
        // 添加多个值到同一个键
        multiValueMap.put("key1", new ArrayList<>());
        multiValueMap.get("key1").add("value1");
        multiValueMap.get("key1").add("value2");
        
        // 获取键关联的多个值
        List<String> valuesForKey1 = multiValueMap.get("key1");
        System.out.println(valuesForKey1); // Output: [value1, value2]
    }
}

おすすめ

転載: blog.csdn.net/qq_41714549/article/details/132503460