一、集合
提供一个存储空间可变的存储模型
集合类有很多,先学一个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及以上顺势后移一位
三个方法:
- 注意集合中如果只有3个元素,那方法add()索引只能写到索引2,写3就会报错:IndexOutOfBounds
五个方法:
测试:
--前提--
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遍历集合通用:
也就是:
for(int i = 0;i<array.size();i++){
array.get(i);
}
3.22增强for
for(int a:array){
sout(a);
3.2案例
3.3案例
多了一个键盘录入数据的要求
构造了一个方法用来输入+生成对象并存入集合
main方法中只需要调用方法,再遍历输出就行了
ArrayList<Student> array = new ArrayList<>();
addStudent(array);
addStudent(array);
addStudent(array);
//就能创建三个对象到集合里了
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。