The underlying implementation of Arraylists (and Vectors for that matter):

Create an array of some capacity. You will need 1 other variable to hold the actual number of elements in the array....