资源描述:
《黑马程序员java培训就业班笔记:day16(集合框架基础总结)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Day161、集合框架体系
2、--由来:数据多了可以用对象类存储,对象多了用集合来存。
3、--理解::咱班就是一个集合,每个人都是单独封装了功能的对象,而且长度是不固定的,因为每天都有人请假,77人或者76人,所以这个集合的长度是可变的。
4、--概述:集合是一个容器、存储对象、长度可变化。
5、--什么时候使用容器:一旦数据多了就得先把数据存储起来再操作,这样效率更好
6、--和数组的区别:1、数组定义时长度是固定的(必须明确元素类型和长度)集合定义时,可以不用明确长度,长度是可变的。2、数组存储是同一类型的数据,集合存储的是对象,而对象可以是任意类型3、数组可
7、以存储基本数据值,而集合只能对象。
8、--集合框架构成与分类:
9、--数据结构?什么是数据结构?有哪些体现方式?
10、--每一个容器因为自身的数据机构不同,进行了单独的描述和对象的封装,以为这些对象有共性就进行向上抽取,形成了集合框架,
11、--学习体系结构的技巧:查阅顶层内容、建立低层对象(继承体系中学)2、Collection接口的常见方法:
12、--增Add();添加一个元素AddAll();添加一个集合,把小集合添加到大集合中
13、--删Remove();删除一个,删除会返回Boolean类型,用到equals方法判断是否相同。如果删除成功,会改变集合的长度,
14、下面同理。removeAll();删除一部分,按照指定的集合的元素来删Clear();清空
15、--判断:Contains();包含,先遍历对象的元素,用到了对象判断的equals方法isEmpty();是否为空Size();集合的元素的大小或者说长度
16、--取retainAll();取交集Iterator();取出元素
17、--转变toArray();理解总结:把我们现在的班级想成容器即可,班上来一个新同学add()添加一个,来了一堆同学addAll();添加一部分,班上出去一个remove()删除一个,出去一部分removeAll()删除一部分。班上是不
18、是有人isEmpty();班上有多少人Size();班上人全部都出去clear()班上是否包含张三contains();和隔壁班有没有相同的学生retainAll();
19、--实现代码:publicstaticvoidmain(String[]args){Collectioncoll=newArrayList();methodDemo(coll);}publicstaticvoidmethodDemo(Collectioncoll){//添加:coll.add("abc1");coll.add("abc2");coll.add("abc3");col
20、l.add("abc4");sop(coll);//输出集合中的元素,[abc1,abc2,abc3,abc4]其实在使用集合对象的toString()集合容器变成字符串:将集合中的对象元素变成字符串,用逗号隔开,用中括号括起。此种方式仅仅是为了演示集合和方法操作后的集合中的变化情况而已。//删除一个coll.remove("abc2");删除会返回boolean类型。用到equals方法判断是否相同。sop(coll.size());truesize3总结:删除如果成功,会改变集合的长度。//清空coll.clear();//判断元素是否存在bo
21、oleanb=coll.contains("abc3");先遍历对象元素,用到了对象判断的equals方法。sop(b);truecoll.isEmpty();判断是否为空。演示带All的方法addAllremoveAllcontainsAllretainAllpublicstaticvoidmethodAllDemo(Collectionc1,Collectionc2){c1.add("abc1");c1.add("abc2");c1.add("abc3");c1.add("abc4");sop(c1);c2.add("abc1");c2.
22、add("abc5");c2.add("abc6");sop(c2);c1.addAll(c2);会出现重复元素,把两个集合中所有的元素都添加到当中。booleanb=c1.containsAll(c2);c1中是否包含c集合中的元素、全部都有才算是包含,有一个没有都不行。booleanb=c1.removeAll(c2);将c1和c2中相同的元素在c1中删除。当没有相同的元素时,返回false.booleanb=c1.retianAll(c2);true取出相同的部分。将c2和c1相同的元素保存在c1中,不同的元素删除。注意:只要集合发生了变化就
23、会返回真,不发生变化时返回false当c1是c2的一个子集的时候就会返回false(),因为c1没有发生变化。}}取出;i