Простой ответ на ваш вопрос будет просто:
mapOne.get(1).get(1).get(1)
, где каждый get
получает внутреннюю карту или, в случае последнего get
, получает окончательное значение.
Поскольку вы упомянули потоки, я думаю, вы, вероятно, хотели спросить, как сгладить вложенную карту, чтобы вы могли получить строки в самой внутренней карте как коллекцию. В этом случае вы должны использовать flatMap
. N вызовов на flatMap
требуется для карты, вложенной в N уровней глубины.
mapOne.values().stream()
.flatMap(x -> x.values().stream())
.flatMap(x -> x.values().stream())
.collect(Collectors.toList()) // or toSet()