基本信息
文件名称:面向对象-教案(第27讲) Map接口及实现类;(第28讲)IO概述.doc
文件大小:102.08 KB
总页数:13 页
更新时间:2025-06-15
总字数:约1.22万字
文档摘要

PAGE5

《面向对象程序设计》教案

第27讲

教学对象

计算机科学技术专业

授课内容

10.7Map接口及实现类

10.8Collections类

课程标准

教学目标

(一)知识目标

掌握Map接口及实现类的定义和使用

掌握Collections工具类的常用方法

(二)能力目标

1.熟练掌握HashMap和TreeMap集合的基本操作,能够熟练使用Map集合解决实际问题

2.能够熟练使用Collections类解决实际问题

教学方法

采用讲授法、演示法、讨论法、案例教学。

学时及分配(第1学时50分钟)

课堂讲授30分钟

课堂练习20分钟

10.7Map接口及实现类

学时及分配(第2学时50分钟)

课堂讲授20分钟

课堂练习30分钟

10.8Collections类

知识点分析

重点:

HashMap和TreeMap集合的基本操作

Collections类

难点:

TreeMap集合元素的比较

Lambda表达式创建比较器对象

教学过程设计

内容

方式

问题导入

集合按照其存储结构可以分为两大类,即单列集合Collection和双列集合Map,在前几节课中,已经讲解了集合中单列集合Collection的使用,接下来本节中将讲解双列集合Map的使用。

内容要点

10.7Map接口及实现类

Map是用来存储“键/值”对的对象,通常称为映射。在Map中存储的关键字和值都必须是对象,并要求关键字是唯一的,而值可以重复。

10.7.1Map接口

Map接口实现基本操作的方法包括添加“键/值”对、返回指定键的值、删除“键/值”对等。

publicVput(Kkey,Vvalue):向映射对象中添加一个“键/值”对。

publicVget(Objectkey):返回指定键的值。

publicVremove(Objectkey):从映射中删除指定键的“键/值”对。

publicbooleancontainsKey(Objectkey):返回映射中是否包含指定的键。

publicbooleancontainsValue(Objectvalue):返回映射中是否包含指定的值。

publicintsize():返回映射中包含的“键/值”对个数。

publicbooleanisEmpty():返回映射是否为空。

publicvoidclear():删除映射中所有“键/值”对。

publicSetKkeySet():返回由键组成的Set对象。

publicCollectionVvalues():返回由值组成的Collection对象。

publicSetMap.EntryK,VentrySet():返回包含Map.EntryK,V的一个Set对象。

Map接口常用的实现类有HashMap类、TreeMap类、Hashtable类和LinkedHashMap类。

10.7.2HashMap类

HashMap类以散列方法存放“键/值”对,它的构造方法有:

HashMap():创建一个空的映射对象,使用默认的装填因子(0.75)。

HashMap(intinitialCapacity):用指定初始容量和默认装填因子创建一个映射对象。

HashMap(Mapm):用指定的映射对象m创建一个新的映射对象。

【案例10-13】使用HashMap存放几个国家名称和首都名称对照表,国家名称作为键,首都名作为值,然后对其进行各种操作。

【程序10-13】MapDemo.java

10.7.3TreeMap类

TreeMap类实现了SortedMap接口,它保证Map中的“键/值”对按关键字升序排序。TreeMap类的构造方法如下:

TreeMap():创建根据键的自然顺序排序的空的映射。

TreeMap(Comparatorc):根据给定的比较器创建一个空的映射。

TreeMap(Mapm):用指定的映射m创建一个新的映射,根据键的自然顺序排序。

将【程序10-13】HashMap改为TreeMap,按国家名的顺序输出Map对象。

10.8Collections类

java.util.Collections类提供了若干static方法实现集合对象的操作。这些操作大多对List操作,主要包括下面几个方面:排序、重排、查找、求极值以及常规操作等。

排序

使用sort()方法可对列表中元素排序,它有下面两种格式:

publicstaticTvoidsort(ListTlist