- 集合框架体系图(重要)
- 集合入门结论
- 集合的理解和好处
- Collection接口
- Collection接口概述
- Collection接口常用方法
- Collection接口 - 特点 - 方法
- Collection接口的子接口:List实现类:
ArrayList
linkedList
Vector
- Collection接口的子接口:Set实现类:
HashSet
linkedHashSet
- Map接口 特点方法 遍历方式
- Map接口的实现类:
HashMap
Hashtable
等…
- Collections工具类的使用
- 集合用起来并不难
- 难点1:理解集合底层机制比较困难
- 难点2:分析源代码
- 难点3:什么情况下用哪种集合的选择问题
前面我们保存多个数据使用的是数组,那么数组有不足的地方,我们分析一下
- 数组
- 长度开始时必须指定,而且一旦指定,不能更改
- 保存的必须为同一类型的元素
- 使用数组进行增加元素的示意代码 - 比较麻烦
- 集合
- 可以动态保存任意多个对个对象,使用比较方便!
- 提供了一系列方便的 *** 作对象的方法:add、remove、set、get等
- 使用集合添加、删除新元素的示意代码
package com.taotao.collection_; import java.util.ArrayList; import java.util.HashMap; public class Collection_ { public static void main(String[] args) { //解读 //1.集合主要是两组(单列集合)(双列集合),单个对象,成对出现的对象 //2.Collection 接口有两个重要的子接口 List Set,他们的实现子类都是单列集合 //3.Map 接口的实现子类 是双列集合,存放的 K-V //Collection //Map ArrayList arrayList = new ArrayList(); arrayList.add("jack"); //单列集合 arrayList.add("tom"); System.out.println(arrayList); HashMap hashMap = new HashMap(); hashMap.put("NO1","北京"); //双列集合 hashMap.put("NO2","上海"); System.out.println(hashMap); } }Collection接口 Collection接口概述
public interface Collection extends Iterable
- collection实现子类可以存放多个元素,每个元素可以是Object
- 有些Collection的实现类,可以存放重复的元素,有些不可以
- 有些Collection的实现类,有些是有序的(List),有些不是有序的(Set)
- Collection接口没有直接的实现子类,是通过它的子接口Set和 List来实现的
- add:添加单个元素
- remove:删除指定元素
- contains:查找元素是否存在
- size:获取元素个数
- isEmpty:判断是否为空
- clear:清空
- addAll:添加多个元素
- containsAll:查找多个元素是否都存在
- removeAll:删除多个元素
- 说明:以ArrayList实现类来演示
使用实现了Collection接口的子类ArrayList来做分析
package com.taotao.collection_; import java.util.ArrayList; import java.util.List; public class CollectionMethod { public static void main(String[] args) { List list = new ArrayList(); //add:添加单个元素 list.add("jack"); list.add(10); //List.add(new Integer(10)) 自动装箱 list.add(true); System.out.println(list); //remove:删除指定元素 //list.remove(0); //删除第一个元素 list.remove(new Integer(10)); //删除10 list.remove("jack"); //删除jack System.out.println(list); //contains:查找元素是否存在 list.add("jack"); System.out.println((list.contains("jack"))); //存在,返回true System.out.println(list); //size:获取元素个数 System.out.println(list.size()); //2 //isEmpty:判断是否为空 System.out.println(list.isEmpty()); //false //clear:清空 list.clear(); System.out.println(list); //[] //addAll:添加多个元素 List list1 = new ArrayList(); list1.add("tom"); list1.add("taotao"); list.addAll(list1); //集合赋值 System.out.println(list1); //containsAll:查找多个元素是否都存在,包含关系 System.out.println(list.containsAll(list1)); //true //removeAll:删除多个元素 list.removeAll(list1); //kong } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)