Сборники
В Java коллекция – это класс, основной целью которого является хранение коллекции (или группы) других элементов. Это может быть группа целых чисел, строк, логических значений, объектов и т.д.
Коллекции делятся на 3 основные группы: Набор, Список и карта.
Набор
Неупорядоченная группа элементов, каждый из которых. элемент в коллекции уникален:
import java.util.HashSet; public class Solution { public static void main(String[] args) throws Exception { HashSetset = new HashSet (); set.add("watermelon"); set.add("banana"); set.add("cherry"); set.add("pear"); set.add("cantaloupe"); set.add("blackberry"); set.add("ginseng"); set.add("strawberry"); set.add("iris"); set.add("potato"); for(String word: set){ System.out.println(word); } } }
Несмотря на то, что порядок добавленных строк является:
- арбуз
- банан
- вишня
- груша
- мускусная дыня
- ежевика
- женьшень
- клубника
- ирис
- картофель
Когда метод System.out.println
вызывается для каждого элемента в наборе (используя a для каждого сокращения), это порядок, в котором печатаются слова:
banana cherry pear iris blackberry ginseng potato strawberry watermelon cantaloupe
Порядок здесь другой.
Списки
В списке каждый элемент упорядочен по индексу. (Знакомым примером списка является массив). Поскольку каждый элемент связан с числом, это упорядоченная коллекция, и можно получить доступ к определенному элементу, если знать правильный индекс. Это похоже на поиск вашего друга, когда у вас есть его адрес, гораздо легче найти его, когда у вас есть эта информация, которая определяет его местоположение.
import java.util.List; import java.util.ArrayList; public class Solution { public static void main(String[] args) throws Exception { ArrayListlist = new ArrayList (); list.add("Hello World"); list.add("Goodbye Mars"); list.add("Salutations Venus"); for(String word: list){ System.out.println(list.indexOf(word) + ":" + word); } } }
Результатом приведенного выше кода является:
0:Hello World 1:Goodbye Mars 2:Salutations Venus
Карты
Карты представляют собой группу пар ключ-значение. В отличие от списков, в которых каждый элемент идентифицируется целым числом, начинающимся с нуля, карты могут быть идентифицированы по имени. В maps каждый ключ должен быть уникальным, но значения не обязательно должны быть уникальными.
import java.util.HashMap; import java.util.Map; public class Solution { public static void main(String[] args) throws Exception { HashMapmap = new HashMap (); map.put("K-Drama", "This is my first life"); map.put("Drama", "Start Up"); map.put("Anime", "One Piece"); map.put("Comedy", "Grownish"); map.put("Animation", "Bob's Burgers"); map.put("Romance", "Pride and Prejudice"); for(Map.Entry pair: map.entrySet()){ String key = pair.getKey(); String value = pair.getValue(); System.out.println(key + " : " + value); } } }
Результатом приведенного выше кода является:
Anime : One Piece Drama : Start Up K-Drama : This is my first life Animation : Bob's Burgers Romance : Pride and Prejudice Comedy : Grownish
Бонус:
В трех приведенных выше примерах используется следующий синтаксис:
for(String text: set){ System.out.println(text); }
Это сокращение Java для итерации по коллекциям. Это позволяет нам перебирать эти группы элементов с помощью неявного итератора. Более длинная версия этого выглядит следующим образом”
Iteratoriterator = set.iterator(); while(iterator.hasNext()) // Check if there is another element { //Get the current element and move to the next line String text = iterator.next(); System.out.println(text); }
Оригинал: “https://dev.to/mobolanleadebesin/collections-in-java-5d3g”