In this course, you'll be introduced to Java collections and explore the details of how the Lists part of the Collections framework works. You'll start by learning how arrays are a rudimentary form of containers with some similarities to ArrayLists. Next, you'll explore the limitations of arrays, namely their fixed length and limited API support. You'll then move on to ArrayLists and explore how ArrayLists mitigate the weaknesses of arrays while still retaining their advantages. You'll learn how to instantiate an ArrayList and iterate over it using while loops, ordinary for-loops, and enhanced for-loops. Finally, you'll examine how to access and modify specific elements in an ArrayList.