1.集合的框架
2.Collection集合常用功能
1 package CollectionTest;/*
2 *@Author:lcc
3 *@Date:2022/4/25-04-25-22:24
4 *@Description:CollectionTest
5 *@version:1.0
6 */
7
8 import java.util.ArrayList;
9 import java.util.Collection;
10
11 public class Demo01Collection {
12 public static void main(String[] args) {
13 demo01();
14 }
15 private static void demo01(){
16 /*public boolean add(E,e):把给定的对象添加到当前集合中
17 * 返回值是一个boolean值,一般都返回true,所以可以不用接收*/
18 //创建集合对象,可以使用多态
19 Collection<String> coll = new ArrayList<>();
20 System.out.println(coll);// [] 重写了toString方法
21 boolean h = coll.add("hello");
22 System.out.println(h+","+coll);//true,[hello]
23 coll.add("赵四");
24 coll.add("王五");
25 System.out.println(coll);//[hello, 赵四, 王五]
26
27
28
29 /*public boolean remove(E,e):把给定的对象在当前集合中删除
30 * 返回值是一个boolean值,集合中存在元素,删除元素,返回true
31 * 集合中不存在元素,删除失败,返回fales*/
32 boolean b1 = coll.remove("赵四");
33 System.out.println(b1); //true
34 boolean b2 = coll.remove("张三");
35 System.out.println(b2); //不存在,返回false
36
37 /*public boolean contains(E,e):判断当前集合是否包含给定的对象
38 * 包含返回true
39 * 不包含返回false*/
40 boolean b3 = coll.contains("王五");
41 System.out.println(b3);//true
42 boolean b4 = coll.contains("赵四");
43 System.out.println(coll);//[hello, 王五]
44 System.out.println(b4);//false
45
46
47 //public boolean isEmpty():判断当前集合是否为空。集合为空返回true,集合不为空返回false
48 boolean b5 = coll.isEmpty();
49 System.out.println(b5);//false
50
51 //public int size():返回集合中元素的个数
52 int size = coll.size();
53 System.out.println(size);
54
55 //public Object[] toArray():把集合中的元素,存储到数组中。
56 Object[] arr = coll.toArray();
57 for (int i = 0; i < arr.length; i++) {
58 System.out.println(arr[i]);
59 }
60
61 //public void clear():清空集合中所有的元素。但是不删除集合,集合还存在
62 coll.clear();
63 System.out.println(coll);//[]
64 }
65 }
3.
4.Iterator迭代器
1 package CollectionTest;/*
2 *@Author:lcc
3 *@Date:2022/4/25-04-25-22:53
4 *@Description:CollectionTest
5 *@version:1.0
6 */
7
8 import java.util.ArrayList;
9 import java.util.Collection;
10 import java.util.Iterator;
11
12 public class Demo02Iterator {
13 public static void main(String[] args) {
14 demo01();
15 }
16 private static void demo01(){
17 //创建一个集合对象
18 Collection<String> coll = new ArrayList();
19 coll.add("关羽");
20 coll.add("张飞");
21 coll.add("刘备");
22 /*1.使用集合中的方法iterator()获取迭代器的实现类对象,使用Iterator接口接收(多态)
23 * 注意:
24 * Iterator<E>接口也是有泛型的,迭代器的泛型跟着集合走,集合是什么泛型,迭代器就是什么泛型*/
25 //多态 接口 实现类对象
26 Iterator<String> it = coll.iterator();
27 //使用迭代器取出集合中元素的代码,是一个重复的过程,使用while循环,循环结束的条件,hasNext方法返回false
28 //使用Iterator接口中的方法hasNext判断还有没有下一个元素
29 //使用Interator接口中的方法next取出集合中的下一个元素
30 while (it.hasNext()){
31 String s = it.next();
32 System.out.println(s);
33 }
34 System.out.println("--------------------");
35 for (Iterator<String> it2 = coll.iterator();it2.hasNext();){
36 String s = it2.next();
37 System.out.println(s);
38 }
39
40 }
41 }
4.迭代器的实现原理
Iterator<String> it = coll.iterator();获取迭代器的实现类对象,并且把指针(索引)指向集合的-1索引。
5.增强for循环:新的for循环必须有遍历的目标,目标集合collection和数组