JAVA: как передать аргументы карты в качестве значения, связанного с идентификатором другой родительской карты - PullRequest
0 голосов
/ 06 декабря 2018

Я не слишком разбираюсь в терминологии, поэтому извините за заголовок.

Я ищу ответ о том, как это сделать: Это карта:

Map<String, Map<String, String>> theMap = new HashMap<String, Map<String, String>>();

И это способ, которым я пытаюсь добавить к нему, я надеюсь, что он дает достаточно понимания:

theMap.put("string", {"a"="b"});

(это не работает)

Ответы [ 3 ]

0 голосов
/ 06 декабря 2018

Вам необходимо добавить subMap к объектуMap:

Map<String, Map<String, String>> theMap = new HashMap<>();

    Map<String, String> subMap = new HashMap<>();
    subMap.put("a","b");

    theMap.put("string",subMap);
0 голосов
/ 06 декабря 2018

Значение Map<String, String>, а не String.Вам нужно добавить новый Map и вставить значения в этот Map

theMap.put("string", new LinkedHashMap<String, String>() {{
    put("a","b");
}});
0 голосов
/ 06 декабря 2018

Если вы хотите добавить Map<String, String> к Map<String, Map<String, String>>, приведенный ниже код поможет вам:

Map<String, Map<String, String>> theMap = new HashMap<String, Map<String, String>>();

Map<String, String> innerMap = new HashMap<String, String>();
innerMap.put("a", "b");

theMap.put("string", innerMap);

Мы создаем переменную innerMap типа Map<String, String> и просто добавляемэто к theMap объекту.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...