文档介绍:第七章 Java 集合框架回顾?什么是异常? Java 中如何进行异常处理? ?请说明 throw 与 throws 的区别与联系? ?什么是包装类? 提问提问本章案例?开发小型电影 DVD 在线销售系统,完成如下功能: –使用集合存储电影 DVD –可以增、删、改、查集合中的电影 DVD –使用电影分类名称关联不同类别的电影集合, 并实现对电影集合的增、删、改、查操作案例演示案例演示本章目标?掌握 Java 集合框架的常用接口 List( 列表)、 Map (映射) ?掌握 List 接口的实现类 ArrayList 、 LinkedList ?掌握 Map 接口的实现类 HashMap ?集合入门?集合是若干用途、性质相同或相近的“数据”组合。? Java 集合中只能保存引用类型的数据,实际上存放的是对象的引用,而非对象本身,集合中元素相当于引用类型变量,集合中元素数目可以动态改变。?从体系上讲,集合类型可以归纳为三种: –集( Set ) Set 集合中不区分元素的顺序,不允许出现重复元素。–列表( List ) List 集合区分元素的顺序,且允许包含重复元素。–映射( Map ) 映射中保存成对的“键-值”信息,映射中不能包含重复的键,每个键最多只能映射一个值。为何要用集合框架 Java 程序员 1 Java 程序员 10 ?如何存储全球所有的 Java 程序员信息? ?如何存储 Java 程序员的身份证号与个人信息,能够通过身份证号方便地获得个人信息? 如果写程序时并不知道程序运行时会需要多少对象,或者,需要更复杂的方式存储对象——那么,可以使用 Java 集合框架,来解决这类问题如果写程序时并不知道程序运行时会需要多少对象,或者,需要更复杂的方式存储对象——那么,可以使用 Java 集合框架,来解决这类问题一维数组身份证号 1……身份证号 N 个人信息 1……个人信息 N 两个一维数组内容一一对应 Java 程序员 1…… Java 程序员 N 全球所有的 Java 程序员总数不确定,显然无法再使用数组保存全球所有的 Java 程序员总数不确定,显然无法再使用数组保存?存储一个公司里 Java 程序员信息,假定公司里有 10 名 Java 程序员一维数组一维数组 Java 集合框架的组成部分 1 接口 Collection Collection List List Map Map 2 具体类 List List ArrayList ArrayList LinkedList LinkedList Map Map HashMap HashMap 3算法 Java 集合框架,为我们提供了一套性能优良、使用方便的接口和类,我们不必再重新发明轮子,只需学会如何使用它们,就可以处理实际应用中出现的问题了 Java 集合框架位于 包中 Java 集合框架,为我们提供了一套性能优良、使用方便的接口和类,我们不必再重新发明轮子,只需学会如何使用它们,就可以处理实际应用中出现的问题了 Java 集合框架位于 包中 Collections Collections 提供了对集合进行排序、遍历等多种算法实现提供了对集合进行排序、遍历等多种算法实现采用键-值对的存储方式,长度可动态改变采用键-值对的存储方式,长度可动态改变采用线性列表的存储方式,长度可动态改变采用线性列表的存储方式,长度可动态改变可变大小的数组。它的优点在于遍历元素和随机访问元素的效率比较高。可变大小的数组。它的优点在于遍历元素和随机访问元素的效率比较高。相对于 ArrayList 而言,在插入或者删除元素时, LinkedList 的效率更高。相对于 ArrayList 而言,在插入或者删除元素时, LinkedList 的效率更高。把各个 Object 映射起来,实现了“键/值”对应的快速存取。把各个 Object 映射起来,实现了“键/值”对应的快速存取。什么是 ArrayList ? ArrayList 类是 List 接口的一个具体实现类? ArrayList 对象实现了可变大小的数组?随机访问和遍历元素时,它提供更好的性能元素1 元素2 元素3 元素4 元素5 元素6 元素7 元素8 元素9 元素 10 当元素个数增加为 11 个 0129 34 5786 元素1 元素2 元素3 元素4 元素5 元素6 元素7 元素8 元素9 元素 10 元素 11 创建了一个新的数组,把原数组中元素复制进来创建了一个新的数组,把原数组中元素复制进来 0129 34 57 86 10 根据下标位置访问元素根据下标位置访问元素什么时候使用 ArrayList ?我们分析案例:小型电影 DVD 在线销售系统,它需要完成如下功能: –能够存储