使用泛型和集合框架.doc

使用泛型和集合框架.doc

ID:59434325

大小:295.00 KB

页数:46页

时间:2020-05-21

使用泛型和集合框架.doc_第1页
使用泛型和集合框架.doc_第2页
使用泛型和集合框架.doc_第3页
使用泛型和集合框架.doc_第4页
使用泛型和集合框架.doc_第5页
资源描述:

《使用泛型和集合框架.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第11章使用泛型和集合框架目标当完成本章后,你应该能够:•了解集合•了解并使用List接口•了解并使用Set接口•了解并使用Map接口•了解遗留的集合类•通过实现Comparable和Comparator接口创建自然排序和自定义排序•使用泛型集合•了解泛型类中类型参数的使用•重构已存在的非泛型代码•编写对集合进行迭代的程序•了解增强型for循环Collection与Map接口•集合(collection)是个管理一组对象的单一对象。在集合内的对象称之为元素(elements)。通常,集合可以处理很多

2、种类型的对象,这些类型的对象都属于一个特定的类型(也就是说,它们具有共同的父类型)。•集合API包含了如下将对象组为一体的接口:lCollection——一组称之为元素的对象;其实现决定了是否有特定的顺序和是否允许有重复元素。lList——有顺序的集合;可允许元素重复lSet——没有顺序的集合;不允许元素重复元素的类型•在JavaSE5.0发布以前,集合维护对Object类型的对象的引用。这可以使任何对象存放在集合内。从集合中获取对象后,在使用之前必须先正确使用强制类型转换。但是,到了JavaSE5

3、.0平台和以后版本,可以使用泛型集合功能指定要存放在集合中的对象类型。避免了获取时做强制类型转换的麻烦。Map接口通用集合实现列表List•列表List是一个有顺序的Collection,允许有重复元素,主要实现类包括ArrayList和LinkedList,前者是顺序表,后者是链表。•程序11-1的示例中,程序声明了一个被赋予新的ArrayList对象的List类型的变量(list)。然后添加一些元素,将list印到标准输出。因为List允许有重复元素,程序11-1的第10行和第11行的add方法

4、返回true。列表List1importjava.util.*;2publicclassArrayListExample{3publicstaticvoidmain(String[]args){4Listlist=newArrayList();5list.add("one");6list.add("second");7list.add("3rd");8list.add(newInteger(4));9list.add(newFloat(5.0F));10list.add("second");//重复

5、,被添加11list.add(newInteger(4));//重复,被添加12System.out.println(list);13}14}集合Set•程序11-2的示例中,程序声明了一个已初始化为newHashSet的Set类型的变量(set)。然后添加一些元素,并将set打印到标准输出中。程序11-2的第10行和第11行尝试对set添加重复的值。因为重复值无法添加到Set,所以add方法返回false。集合Set1importjava.util.*;2publicclassSetExample

6、{3publicstaticvoidmain(String[]args){4Setset=newHashSet();5set.add("one");6set.add("second");7set.add("3rd");8set.add(newInteger(4));9set.add(newFloat(5.0F));10set.add("second");//重复,不被添加11set.add(newInteger(4));//重复,不被添加12System.out.println(set);13}14

7、}映射Map•Map有时称之为关联数组。Map对象描述了键(key)与值(value)的映射关系。根据定义,Map对象不允许重复键或空键,一个键最多只能对应一个值。•Map接口提供使映射内容被视为集合的三个方法:entrySet–返回包括所有键值对的集合keySet–返回映射所有键的集合values–返回包含映射内所有值的集合Map•Map接口并没有继承Collection接口,因为它代表了映射,而非对象的集合。SortedMap接口继承Map接口。实现Map接口的一些类有HashMap、TreeM

8、ap、IdentityHashMap和WeakHashMap。这些映射集合实现的迭代器所表示的顺序只针对每个特定的迭代器。映射Map•程序11-3的示例中,程序声明了一个Map类型的变量map,并赋予它新的HashMap对象。然后通过使用put操作添加一些元素。为了证明map不允许有重复键,程序尝试使用存在的键添加新的值。这将导致以前添加的值被新的值取代。随后程序使用集合查看操作keySet、values和entrySet获取map的内容。1importjava.ut

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。