Deque & ArrayDeque
Deque & ArrayDeque belongs to the Collections story. List = ordered, duplicates OK (ArrayList). Set = unique (HashSet). Map = key → value (HashMap). Pick by need, not by what you revised last.
For Deque & ArrayDeque: ArrayList is the daily List: get(i) is fast, add at end is fast. HashMap lookup by key is average O(1). HashSet is unique values, no duplicates.
Use Deque & ArrayDeque with generics: List<String>, Map<String, Integer>. Iterate with for-each or iterator. Don’t use a raw array when the size must grow.
Let's take this on the board with one tiny Main class — no extra files. Deque & ArrayDeque — prints length 3, middle value 20, then all values. Start from main, go line by line, and stop at each print. That output is the proof for Deque & ArrayDeque.
Contrast array vs ArrayList in one line.