欢迎来到天天文库
浏览记录
ID:51644348
大小:638.50 KB
页数:32页
时间:2020-03-27
《《Java集合框架》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Java集合框架本章内容1.Java集合框架概述2.List接口以及实现类3.Set接口以及实现类4.Map接口以及实现类5.Boxing/unBoxing6.Iterator以及Enumeration接口7.Collections和Arrays类集合的概念集合就是将若干用途相同、近似的“数据”结合成一个整体。集合从体系上分为三种:(1)列表(List):List集合区分元素的顺序,允许包含相同的元素。(2)集(Set):Set集合不区分元素的顺序,不允许包含相同的元素。(3)映射(Map):Map集
2、合保存的”键”-“值”对,“键”不能重复,而且一个“键”只能对应一个“值”。Java集合中只能保存引用数据类型,也就是保存的是对象的地址,而非对象本身。集合中元素相当于引用类型的变量。集合框架的类图关系JDK所提供的容器API全部位于java.util包中。容器API的类图关系如下:Collection接口中的方法(1)intsize();(2)booleanisEmpty();(3)voidclear();(4)booleancontains(Objectelement);(5)booleanadd
3、(Objectelement);(6)booleanremove(Objectelement);(7)Iteratoriterator();(8)booleancontainsAll(Collectionc);(9)booleanaddAll(Collectionc)(10)booleanremoveAll(Collectionc)(11)booleanretainAll(Collectionc)(12)Object[]toArray();List接口List是Collection的子接口,实现Lis
4、t接口的容器中存放的对象是有顺序的,而且可以重复。List容器中存放的对象都有一个整数型的序号,记录该对象在容器中的位置,可以根据序号来访问容器中的元素。JDK提供实现List接口的类有ArrayList、LinkedList、Vector等。Objectget(intindex)Eset(intindex,Eobj)voidadd(intindex,Objectobj)Eremove(intindex)intindexOf(Objectobj)intlastIndexOf(Objectobj)Lis
5、t接口的实现类-ArrayListjava.util.ArrayList实现了List接口,用于描述长度可变的数组列表(底层采用数组实现)。ArrayList允许元素取值为null,提供了一些新增的方法来操作列表容量的大小。publicArrayList()(默认大小是10)publicArrayList(intinitialCapacity)publicvoidensureCapacity(intminCapacity)确保它至少能够容纳最小容量参数所指定的元素数publicvoidtrimToSi
6、ze()将此ArrayList实例的容量调整为列表的当前大小ArrayList举例ArrayListlist=newArrayList(6);list.add(“hello");list.add(newInteger(10));list.add(newDouble(10.5));System.out.println(list.size());Objectitem[]=list.toArray();for(inti=0;i7、i]);list.trimToSize();见源文件:ArrayList/ArrayListTest.javaList接口的实现类-LinkedListjava.util.LinkedList实现了List接口,底层采用链表实现。可以当做队列、栈等数据结构来使用。新增方法:voidaddFirst(Objectobj)voidaddLast(Objectobj)Objectpeek()获取但不移除列表的第一个元素Objectpoll()获取并移除列表中的第一个元素Objectset(intindex,8、Objectelement)见源文件:LinkedList/LinkedList.javaArrayList和LinkedList的比较1.在ArrayList的中间插入或删除一个元素意味着这个列表中剩余的元素都会被移动;而在LinkedList的中间插入或删除一个元素的开销是固定的。2.LinkedList不支持高效的随机元素访问,Arraylist支持高效的随机访问。3.ArrayList的空间浪费主要体现在在list列表的结尾预留一定的容量空间,而
7、i]);list.trimToSize();见源文件:ArrayList/ArrayListTest.javaList接口的实现类-LinkedListjava.util.LinkedList实现了List接口,底层采用链表实现。可以当做队列、栈等数据结构来使用。新增方法:voidaddFirst(Objectobj)voidaddLast(Objectobj)Objectpeek()获取但不移除列表的第一个元素Objectpoll()获取并移除列表中的第一个元素Objectset(intindex,
8、Objectelement)见源文件:LinkedList/LinkedList.javaArrayList和LinkedList的比较1.在ArrayList的中间插入或删除一个元素意味着这个列表中剩余的元素都会被移动;而在LinkedList的中间插入或删除一个元素的开销是固定的。2.LinkedList不支持高效的随机元素访问,Arraylist支持高效的随机访问。3.ArrayList的空间浪费主要体现在在list列表的结尾预留一定的容量空间,而
此文档下载收益归作者所有