Kodeksu metody addFirst w klasie java.util.ArrayDeque jestaddFirst metoda ArrayDeque klasy
public void addFirst(E e) {
if (e == null)
throw new NullPointerException();
elements[head = (head - 1) & (elements.length - 1)] = e;
if (head == tail)
doubleCapacity();
}
Tutaj nie jestem w stanie zrozumieć sens
head = (head - 1) & (elements.length - 1)
Załóżmy także, jeśli rozmiar tablicy to 10. Głowa ma wartość 0, a ogon ma wartość 9 (tablica jest pełna). W takim przypadku, w jakim systemie indeksu będzie wstawiać? (Rozumiem, że jeśli tablica jest pełna, najpierw zwiększ jej rozmiar, a następnie wstaw w indeks arraySize() -1).
Miałem takie same wątpliwości :) – meexplorer