Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

Java 9 Collection Factory Methods: удобное создание неизменяемых List, Set, Map

Java 9 добавила фабричные методы в интерфейсы List, Set, Map для создания неизменяемых коллекций лаконично.

Старый способ (Java 7/8)

Set<String> set = new HashSet<>();
set.add("A"); set.add("B"); set.add("C");
set = Collections.unmodifiableSet(set);

List<String> list = new ArrayList<>();
list.add("A"); list.add("B"); list.add("C");
list = Collections.unmodifiableList(list);

Map<String, String> map = new HashMap<>();
map.put("A","Apple"); map.put("B","Boy"); map.put("C","Cat");
map = Collections.unmodifiableMap(map);

Новые методы (Java 9+)

static <E> List<E> of(E e1, E e2, E e3);
static <E> Set<E> of(E e1, E e2, E e3);
static <K,V> Map<K,V> of(K k1, V v1, K k2, V v2, K k3, V v3);
static <K,V> Map<K,V> ofEntries(Map.Entry<? extends K,? extends V>... entries)

Важные моменты

Новый способ

Set<String> set = Set.of("A", "B", "C");
List<String> list = List.of("A", "B", "C");
Map<String, String> map = Map.of("A","Apple","B","Boy","C","Cat");
Map<String, String> map1 = Map.ofEntries(
    new AbstractMap.SimpleEntry<>("A","Apple"),
    new AbstractMap.SimpleEntry<>("B","Boy"),
    new AbstractMap.SimpleEntry<>("C","Cat")
);

Вывод

[A, B, C]
[A, B, C]
{A=Apple, B=Boy, C=Cat}
{A=Apple, B=Boy, C=Cat}

java

  1. Освоение операторов Java: типы, синтаксис и практические примеры
  2. Абстрактные классы и методы в Java: полное руководство
  3. Интерфейсы в Java: концепции, реализация и лучшие практики
  4. Try-with-resources в Java: автоматическое управление ресурсами
  5. Аннотации в Java: типы, размещение и практические примеры
  6. Освоение Java Autoboxing и Unboxing: практические примеры и лучшие практики
  7. Java String toLowerCase() и toUpperCase(): преобразование регистра с учётом локали
  8. Java Collections Framework: полное руководство по эффективным структурам данных
  9. Java 10: 70+ новых API и улучшений
  10. Java 10: интерфейс Garbage Collector и параллельный Full GC для G1