collections ×12
Создан 03.01.2025
40
голоса
4
ответов
23
просмотров
Эффективный способ итерации по каждой записи в Java Map?

Если у меня есть объект, реализующий интерфейс Map в Java, и я хочу пройтись по каждой паре, содержащейся в нем, каков самый эффективный способ перебора элементов карты?

Зависит ли порядок элементов от конкретной реализации карты, которую я использую для этого интерфейса?

33
голоса
5
ответов
19
просмотров
Инициализация ArrayList в одну строчку

Я хотел создать список опций для тестирования. Сначала я сделал это следующим образом:

ArrayList places = new ArrayList();
places.add("Buenos Aires");
places.add("Córdoba");
places.add("La Plata");

Затем я рефакторировал код следующим образом:

ArrayList places = new...
18
голоса
5
ответов
16
просмотров
Сортировка Map<Key, Value> по значениям

Я столкнулся с проблемой сортировки объекта типа Map по его значениям. Поскольку значения не уникальны, я вынужден преобразовывать keySet в массив и затем сортировать этот массив с помощью sort с кастомным компаратором, который сортирует по значению, связанному с ключом.

Есть ли более...

16
голоса
5
ответов
11
просмотров
Как напрямую инициализировать HashMap (в литеральном виде)?

Проблема с инициализацией HashMap в Java

Я пытаюсь инициализировать Java HashMap с заранее известными значениями, но не могу найти подходящий способ сделать это. Вот что я пытаюсь реализовать:

Map test = 
    new HashMap{"test":"test","test":"test"};

Какой будет правильный синтаксис...

13
голоса
5
ответов
8
просмотров
Итерация по коллекции: избегаем ConcurrentModificationException при удалении объектов в цикле

Описание проблемы:

Мы все знаем, что нельзя делать следующее из-за исключения ConcurrentModificationException:

for (Object i : l) {
    if (condition(i)) {
        l.remove(i);
    }
}

Однако на практике иногда это срабатывает, а иногда — нет. Вот конкретный пример...

12
голоса
5
ответов
14
просмотров
Преобразование 'ArrayList<String>' в 'String[]' в Java

Как я могу преобразовать объект ArrayList<String> в массив String[] в Java?

12
голоса
5
ответов
20
просмотров
Как инициализировать статическую Map?

Вопрос на StackOverflow:

Как инициализировать статическую Map в Java?

Я рассмотрел несколько подходов:

  1. Статический инициализатор
  2. Инициализатор экземпляра (анонимный подкласс) или же какой-то другой метод?

Каковы плюсы и минусы каждого из этих методов?

Вот пример, иллюстрирующий два...

10
голоса
5
ответов
13
просмотров
Разница между <? super T> и <? extends T> в Java

Вопрос о различиях между List и List в Java

Я столкнулся с проблемой при работе с обобщениями в Java и не могу понять разницу между двумя типами списков: List и List.

Я использовал List, но заметил, что не могу добавлять элементы в этот список с помощью метода list.add(e). В то же...

9
голоса
5
ответов
9
просмотров
Как инициализировать значения HashSet при создании?

Я столкнулся с проблемой: мне нужно создать объект типа Set с начальными значениями. Вот как я это делаю на данный момент:

Set h = new HashSet();
h.add("a");
h.add("b");

Есть ли способ сделать это в одну строку кода? Это было бы полезно, например, для финальных статических полей.

9
голоса
4
ответов
4
просмотров
Как преобразовать Set в Array?

Проблема:

Я использую класс Set в JavaScript, чтобы создавать массивы с гарантированно уникальными элементами. Однако, я столкнулся с тем, что у Set нет удобного способа для получения его элементов, кроме генератора Set.values, который вызывается в довольно неуклюжем формате:...

9
голоса
5
ответов
5
просмотров
Как создать новый список в Java

Создаем Set следующим образом:

Set myset = new HashSet();

Но у меня возник вопрос, как создать List в Java?

7
голоса
5
ответов
0
просмотров
Как удалить элемент массива в TypeScript?

У меня есть массив, который я создал в TypeScript, и в нем есть свойство, которое я использую в качестве ключа. Если у меня есть этот ключ, как можно удалить элемент из массива?