第七章
一.集合框架
1.概述:集合框架是为表示和操作集合而规定的一种统一的标准体系结构。
2.三大内容:对外的接口、接口的实现和对集合运算的算法。
3.使用集合框架的好处:集合弥补了数组的缺陷,它比数组更灵活更实用,可大大提高软件的开发效率,而且不同的集合可适用于不同场合。
4.Java的集合框架中有两大类接口,Collection和Map。Collection有List和Set两个子接口。各接口区别:
Collection接口存储一组不唯一、无序的对象。
Set接口继承Collection接口,存储一组唯一、无序的对象。
List接口继承Collection接口,存储一组不唯一、有序的对象。
Map接口存储一组成对的键值对象,提供key到value的映射。key不要求有序,不允许重复。value同样不需要有序,但允许重复。
二.接口
1.ArrayList和数组采用相同的存储方式,优点在于遍历元素和随机访问元素的效率比较高。LinkedList采用链表存储方式,优点在于插入、删除时效率比较高。
2.HashMap是最常见的Map实现类,它的存储方式是哈希表,优点是查询指定元素效率高。
三.迭代器
Iteraor为集合而生,专门实现集合的遍历。它隐藏了各种集合实现类的内部细节,提供了遍历集合的统一编程接口。
四.泛型集合.
使用泛型集合在创建集合对象时指定集合中元素的类型,再从集合中取出元素时无需进行类型强制转换,避免了ClassCastException异常。
五.Java中共有8个包装类:Byte 、Short、Integer、Long、Floa、tDouble、Boolean、Character
数组和集合的主要区别:
1.数组可以存储基本数据类型和对象,而集合中只能存储对象。
2.数组长度固定,集合长度可动态改变。
3.定义数组时必须指定数组元素类型,集合默认其中所有元素都是object。
4.length用来获取数组长度,size()用来直接获取集合存储的元素个数。
5.集合有多种实现方式和不同的使用场合,数组仅用于分配连续区间。
6.集合以接口和类的形式存在,具有封装、继承和多态等类的特性,通过简单的方法和属性调用即可实现各种复杂操作,大大提高了软件的开发效率。