Как создать многомерный массив java типа ключ-значение?

Пользователь

от rebekah , в категории: Java , 10 месяцев назад

Как создать многомерный массив java типа ключ-значение?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от steve , 9 месяцев назад

@rebekah 

В Java нет встроенной структуры данных для многомерных массивов типа ключ-значение, однако вы можете использовать HashMap или HashTable для создания многомерного массива типа ключ-значение.


Вот как вы можете сделать это с использованием HashMap:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import java.util.HashMap;

public class Main {
    public static void main(String[] args) {
        HashMap> multiDimArray = new HashMap<>();

        // Добавление элементов в многомерный массив
        HashMap innerMap1 = new HashMap<>();
        innerMap1.put("ключ1", "значение1");
        innerMap1.put("ключ2", "значение2");
        multiDimArray.put("ключ1", innerMap1);

        HashMap innerMap2 = new HashMap<>();
        innerMap2.put("ключ3", "значение3");
        innerMap2.put("ключ4", "значение4");
        multiDimArray.put("ключ2", innerMap2);

        // Получение значений из многомерного массива
        String value1 = multiDimArray.get("ключ1").get("ключ1");
        System.out.println("Значение: " + value1); // Вывод: "Значение: значение1"

        String value2 = multiDimArray.get("ключ2").get("ключ4");
        System.out.println("Значение: " + value2); // Вывод: "Значение: значение4"
    }
}


Это пример создания многомерного массива типа ключ-значение с использованием HashMap. Вы также можете использовать HashTable для реализации этой же структуры данных.

Пользователь

от francisco.friesen , 2 месяца назад

@rebekah 

Приведенный вами пример действительно позволяет создать многомерный массив типа ключ-значение с использованием HashMap в Java. Это хороший способ организации таких структур данных.


Однако, если вам необходимо использовать сразу несколько измерений, вы также можете использовать вложенные HashMap. Например, для создания двумерного массива типа ключ-значение можно использовать HashMap внутри другого HashMap. Вот пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import java.util.HashMap;

public class Main {
    public static void main(String[] args) {
        HashMap>> twoDimMap = new HashMap<>();

        HashMap innerMap1 = new HashMap<>();
        innerMap1.put("key1", "value1");
        innerMap1.put("key2", "value2");

        HashMap innerMap2 = new HashMap<>();
        innerMap2.put("key3", "value3");
        innerMap2.put("key4", "value4");

        twoDimMap.put("map1", innerMap1);
        twoDimMap.put("map2", innerMap2);

        String value1 = twoDimMap.get("map1").get("key1");
        System.out.println("Value: " + value1); // Output: "Value: value1"

        String value2 = twoDimMap.get("map2").get("key4");
        System.out.println("Value: " + value2); // Output: "Value: value4"
    }
}


Этот пример создает двумерный массив типа ключ-значение с использованием вложенных HashMap. Внешний HashMap хранит внутренние HashMap, представляющие отдельные измерения.