You now know how to work with ArrayList, a resizable alternative to fixed-size arrays. You can add, access, modify, and remove elements using .add(), .get(), .set(), and .remove().
You learned that ArrayList requires wrapper classes (Integer, Double, Character) instead of primitives, and that Java converts between them automatically through autoboxing and unboxing. You used the Collections utility class to sort, reverse, shuffle, and find min/max values.
You also saw how to convert between arrays and ArrayList objects, and why declaring variables with the List interface gives you more flexibility. In the next section, you'll apply these collection skills to HashMap and HashSet.