一、集合

提供一个存储空间可变的存储模型
集合类有很多,先学一个ArrayList

ArrayList<E>

  • 是一个可调整大小的数组实现
  • <E>是一种特殊数据类型,泛型
E可用引用数据类型替代:
在ArrayList中存储字符串类型,ArrayList<String>
在ArrayList中存储学生对象类型,ArrayList<Student>

二、ArrayList的构造方法和添加方法

可索引,按存入顺序输出、可重复

构造方法:

ArrayList<String> array = new ArrayList<>();

添加方法:

array.add("hello");//返回值为boolean,意思是是否成功添加
array.add(2,"haha");//在索引号为2的地方添加“haha”,索引号3及以上顺势后移一位

三个方法:
image.png

image.png

  • 注意集合中如果只有3个元素,那方法add()索引只能写到索引2,写3就会报错:IndexOutOfBounds

五个方法:
image.png
测试:
--前提--
ArrayList<String> array = new ArrayList<>();
array.add("hello");
array.add("world");
array.add("java");
--前提--

1.删除指定元素,返回删除是否成功

array.remove("world");
arrya.remove("haha");

第一句返回true,第二句返回false

2.删除索引元素,返回被删除的元素

array.remove(1);

返回world,集合变为[hello,java]

array.remove(3);

报错,IndexOutOfBounds

3.返回索引元素,并修改索引元素

array.set(1,"hail");

返回world,集合变为[hello,hail,java]

4.返回索引元素,如果是对象就返回对象

Sout(array.get(1));

输出world

5.返回集合的长度

Sout(array.size());

输出3

三、遍历集合

3.1遍历集合通用:

image.png
也就是:

for(int i = 0;i<array.size();i++){
    array.get(i);
}
3.22增强for
for(int a:array){
   sout(a);
3.2案例

image.png

image.png

3.3案例

多了一个键盘录入数据的要求
image.png
构造了一个方法用来输入+生成对象并存入集合
image.png

main方法中只需要调用方法,再遍历输出就行了

ArrayList<Student> array = new ArrayList<>();

addStudent(array);
addStudent(array);
addStudent(array);
//就能创建三个对象到集合里了

MeeWoW
18 声望1 粉丝

加油


« 上一篇
StringBuilder
下一篇 »
学生管理系统