Найти тему
DEBAGanov

Java 663. Как вы конвертируете HashMap в ArrayList в Java?

Для конвертации HashMap в ArrayList в Java, нужно преобразовать значения карты в список и добавить каждый список в список результата. Есть несколько способов выполнить эту операцию.

  • C помощью метода entrySet():
HashMap<Integer, String> map = new HashMap<>();
map.put(1, "apple");
map.put(2, "banana");
map.put(3, "cherry");

List<Map.Entry<Integer, String>> list = new ArrayList<>(map.entrySet());

Мы создаем новый ArrayList, который содержит все записи карты (ключ-значение) с помощью метода entrySet(). Затем мы используем конструктор ArrayList для создания списка из элементов карты.

  • Использование методов keySet() и get():
HashMap<Integer, String> map = new HashMap<>();
map.put(1, "apple");
map.put(2, "banana");
map.put(3, "cherry");

List<String> list = new ArrayList<>(map.size());
for (Integer key : map.keySet()) {
list.add(map.get(key));
}

Мы создаем новый ArrayList заданного размера и затем проходим по всем ключам карты, используя метод keySet(), и добавляем соответствующее значение в новый список.

  • Использование метода values():
HashMap<Integer, String> map = new HashMap<>();
map.put(1, "apple");
map.put(2, "banana");
map.put(3, "cherry");

List<String> list = new ArrayList<>(map.values());

Мы используем метод values() карты для получения списка всех значений и передаем его в конструктор ArrayList, чтобы создать новый список на основе значений map.

Какой из этих методов использовать, зависит от ваших потребностей. Если вы хотите сохранить ключи карты, используйте первый метод. Если вам нужно только значения, то можно использовать второй или третий метод.

1606 вопрос-ответ по Java: https://github.com/DEBAGanov/interview_questions

Tелеграмм канал: https://t.me/DEBAGanov

Мое резюме: https://github.com/DEBAGanov