数组:是Java语言内置的数据类型,数组存储基本数据类型,也可以存储引用数据类型,底层链表实现,查询快速,当你创建了一个数组时,他的容量是不变的
集合: JAVA还提供其他容器,list,map,set,他们处理对象的时候就好像这些对象没有自己的类型一样,而是直接归根于Object,这样只需要创建一个容器,把对象放进去,取出时转换成自己的类型就行了,集合只能存储引用数据类型。不可以存储基本数据类型.
区别:
数组效率最高,这些容器底层实现也是基于数组的,但是数组功能太弱小了,所以新增了其他的容器集合,例如[知道数组的长度,而且以后也不会再增加,那肯定就使用数组了;如果数组的长度不定或者说是长度会增加,为了方便起见使用容器]