第一,都是容器,都可以存储数据。
第二,数组只能存储统一数据类型的数据,而集合可以存储不同数据类型的数据。
第三,集合分两种,一种是无序的,一种是有序的,而数组都是有序的。
其三,数组长度是不可变的,而集合是可变的,可以说,数组是特殊的集合,但是集合的底层原理又是数组。
数组中的元素是有序的,可以重复的,而集合则是无序的,不能重复的。集合的底层实现是使用hash表实现的,将key作为hashset元素,value为一个不变的对象,建议看一下源代码就都清楚了。
集合是通过数组实现的,算是特殊数组吧!数组没有默认的定长,集合有默认的长度
查看源代码就可以知道,集合的底层实现跟List类似的。可以这样理解,集合是一种特殊的HashMap,只是其中的key都是Object,而value才是其保存的值!
集合是的数组的特殊封装