Data Structures Java CS203 Internal Structure of an ArrayList