Это должно быть легко найти аналогичный вопрос в сети, но я не смог. Я хочу динамически добавлять элементы на карту, содержащую другие карты и т. д.
Map<String,Map<String,String>>
дело в том, что я хочу что-то аккуратное, короткое и элегантное, в идеале как в Java 9
Map<"test",Map.of("test1","Test2")>
но я застрял в Java 8 в этом проекте, поэтому я попытался с Guava.
Map<String,Map<String,String>> kon;
kon.put("yuo",ImmutableMap.of(" Masdad","dada"));
но он жалуется, что кон не инициализируется, есть предложения?
Вам, вероятно, следует прочитать о том, как работает Java, например, 1. учебник. Вам необходимо инициализировать локальные переменные перед их использованием. Например: kon = new HashMap<>() в вашем примере
@user2557930 user2557930 Java является подробным очень, поэтому вы не можете добиться этого напрямую. Вы можете использовать Kotlin, который позволяет что-то подобное map[key] = value
хорошо, спасибо Лино!




but it complains kon is not initializes, any suggestions ?
Инициализируйте свою карту.
Map<String,Map<String,String>> kon = new HashMap<>();
kon.put("yuo",ImmutableMap.of(" Masdad","dada"));
Дядя Боб говорит, что инициализация переменных — это запах кода
Он жалуется, что «кон не инициализирован», потому что вы его не инициализировали.
Map<String,Map<String,String>> kon = new HashMap<>();
«в идеале, как в Java 9». Этот фрагмент недействителен в Java 9 или любой версии Java в прошлом, настоящем или будущем.