Collections Начинающий

Доступ к первому/последнему элементу и получение обратных представлений с помощью чистых методов API.

✕ Java 8
// Get last element
Object last = list.get(list.size() - 1);
// Get first
Object first = list.get(0);
// Reverse iteration: manual
✓ Java 21+
var last = list.getLast();
var first = list.getFirst();
var reversed = list.reversed();
Заметили проблему в этом коде? Сообщите нам.
📖

Самодокументируемый

getLast() понятнее, чем get(size()-1).

🔄

Обратное представление

reversed() возвращает представление — копирование не требуется.

🧩

Единый API

Работает одинаково на List, Deque и SortedSet.

Старый подход
Арифметика с индексами
Современный подход
getFirst/getLast
Начиная с JDK
21
Сложность
Начинающий
Упорядоченные коллекции
Доступно

Широко доступно начиная с JDK 21 LTS (сент. 2023)

SequencedCollection добавляет getFirst(), getLast(), reversed(), addFirst() и addLast() к List, Deque, SortedSet и LinkedHashSet. Больше никакой арифметики size-1 или ручной обратной итерации.