java中怎么关联数组

Java 中没有内置的关联数组,但可以通过以下方式模拟:1. 使用 HashMap 存储键值对;2. 使用线程安全的 ConcurrentHashMap;3. 借助 Apache Commons Collections4 MapUtils 类。

如何在 Java 中创建关联数组

Java 中没有内置的关联数组数据结构。但是,可以使用以下方法之一来模拟关联数组的行为:

1. HashMap:

HashMap 是 Java 中存储键值对的标准容器。键可以是任何对象,而值可以是任何对象。要创建关联数组,可以创建一个 HashMap 实例并使用 put() 方法将键值对添加到其中。

示例:

import java.util.HashMap;

public class AssociationArray {

    public static void main(String[] args) {
        HashMap numMap = new HashMap<>();
        numMap.put("One", 1);
        numMap.put("Two", 2);
        numMap.put("Three", 3);

        // 访问值
        System.out.println(numMap.get("Two")); // 输出:2
    }
}

2. ConcurrentHashMap:

ConcurrentHashMap 是一个线程安全的 HashMap 实现。如果需要在多线程环境中使用关联数组,可以使用 ConcurrentHashMap。

示例:

import java.util.concurrent.ConcurrentHashMap;

public class AssociationArray {

    public static void main(String[] args) {
        ConcurrentHashMap numMap = new ConcurrentHashMap<>();
        numMap.put("One", 1);
   

numMap.put("Two", 2); numMap.put("Three", 3); // 访问值 System.out.println(numMap.get("Two")); // 输出:2 } }

3. Apache Commons Collections4 MapUtils:

Apache Commons Collections4 库提供了一个 MapUtils 类,其中包含用于创建关联数组的便捷方法。

示例:

import org.apache.commons.collections4.MapUtils;
import org.apache.commons.collections4.keyvalue.DefaultKeyValue;

public class AssociationArray {

    public static void main(String[] args) {
        Map numMap = MapUtils.putAll(new HashMap<>(),
                new DefaultKeyValue<>("One", 1),
                new DefaultKeyValue<>("Two", 2),
                new DefaultKeyValue<>("Three", 3));

        // 访问值
        System.out.println(numMap.get("Two")); // 输出:2
    }
}