集合和数组的区别:
共同点:都是存储数据的容器;
不同点:数组的容量是固定的,集合的容量是可变的;
注释:如果存储的数据,长度经常发生改变,推荐使用集合。
容器概念:简单理解就是盒子。
注释:数组都可以存基本数据类型和引用数据类型
集合只能寄存引用数据类型,如果想要村基本数据类型,需要对应的包装类。
原因分析:Java集合不能存放基本数据类型,只能存放对象的引用。
每个集合元素都是一个引用变量,实际内容都存放在堆内或方法区里面,
但是基本数据类型是在栈内存上分配空间的,栈上的数据随时会被收回。
如何解决?
可以通过包装类,把基本数据类型转化为对象类型,存放引用。
更方便的,由于有了自动拆箱和装箱功能,基本数据类型和其对应对象
之间的转换变得很方便,把基本数据类型存入集合中可以自动存,系统
会自动将其装箱成封装类,然后将其加入到集合当中。
基本数据类型 | 包装类 |
byte | Byte |
short | Short |
boolean | Boolean |
char | Charset |
int | Integer |
long | Long |
float | Float |
double | Double |
例如: