Проблема здесь в том, что Map
имеет два значения (ключ и значение), в то время как List
имеет только одно значение (элемент).
Следовательно, лучшее, что можно сделать, - это получить List
ключей или значений. (Если только мы не создадим оболочку для пары ключ / значение).
Скажем, у нас есть Map
:
Map<String, String> m = new HashMap<String, String>();
m.put("Hello", "World");
m.put("Apple", "3.14");
m.put("Another", "Element");
Ключи как List
можно получить, создав новый ArrayList
из Set
, возвращенного методом Map.keySet
:
List<String> list = new ArrayList<String>(m.keySet());
В то время как значения List
могут быть получены путем создания нового ArrayList
из Collection
, возвращенного методом Map.values
:
List<String> list = new ArrayList<String>(m.values());
Результат получения List
ключей:
Apple
Another
Hello
Результат получения List
значений:
3.14
Element
World