- 集合与数组的区别
- 长度:数组长度固定,一旦创建完成,就不能改变。集合长度可变,根据添加和删除元素,自动扩容或自动收缩,(添加几个元素就扩容多少,删除几个元素就收缩多少)
- 存储类型:数组可以存基本数据类型和引用数据类型。集合可以存引用数据类型,但集合不能直接存储基本数据类型,只有把基本数据类型变成包装类后才可以存到集合中
- 基本数据类型对应的包装类:
基本数据类型 | 包装类 |
---|---|
byte | Byte |
short | Short |
char | Character |
int | Integer |
long | Long |
float | Float |
double | Double |
boolean | Boolean |
- 在JDK5以后 int Integer,char Character(基础数据类型和包装类)之间可以互相转化,即实参可以直接写基础数据类型。
- 创建集合的对象
ArrayList <E > list = new ArrayList<E >();
//JDK7以前的写法
ArrayList <E > list = new ArrayList< >();
//从JDK7开始的写法
- 其中:<E >为泛型,用来限定集合中存储数据的类型,在JDK7以后,后面的E可以省略,只写前面的E即可。
- 在sout集合名时,打印的不是地址值,而是集合中存储的数据内容,同时会用[ ]把所有的数据进行包裹,数据与数据之间用“,”隔开,这是java已经写好的模式。
- ArrayList成员方法
- add(添加元素)的方法,若匹配数据类型则不管内容,返回值都是true,都会添加成功
- 其中remove(删除元素)的方法,会删除从左至右的第一个匹配的元素,删除成功后,返回true,集合会更新,若删除失败,返回false,集合不变。