目标:理解ArrayList的扩容机制和Iterator的fail-fast、fail-safe机制。ArrayList()使用长度为零的数组,ArrayList(int initialCapacity)使用指定容量的数组,ArrayList(Collection c)使用c的大小作为数组容量。add(Object o)首次扩容为10,再次扩容为上次容量的1.5倍。addAll(Collection c)没有元素时,扩容为Math.max(10, 实际元素个数),有元素时为Math.max(原容量1.5倍, 实际元素个数)。