数组长度是固定,当添加的元素超过了数组的长度时需要对数组重新定义, 这样太麻烦了! 所以, Java内部给我们提供了集合类,能存储任意对象,长度是可以改变的,随着元素的增加而增加,随着元素的减少而减少.
区别1:
数组既可以存储基本数据类型,又可以存储引用数据类型, 基本数据类型存储的是值, 引用数据类型存储的是地址值;
集合只能存储引用数据类型(对象), 集合中也可以存储基本数据类型,但是在存储的时候会自动装箱(JDK1.5新特性)变成对象.
区别2:
数组长度是固定的,不能自动增长;
集合的长度的是可变的, 可以根据元素的增加而增长.
使用情况:
如果元素个数是固定的, 推荐用数组
相关结构层次图
原文:https://blog.51cto.com/14512197/2436215