欢迎来到天天文库
浏览记录
ID:45755265
大小:59.27 KB
页数:25页
时间:2019-11-17
《Java基础学习总结》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Java基础学习总结数据结构是以某种形式将数据组织在一起的集合,它不仅存储数据,还支持访问和处理数据的操作oJava提供了几个能有效地组织和操作数据的数据结构,这些数据结构通常称为Java集合框架。在平常的学习开发中,灵活熟练地使用这些集合框架,可以很明显地提高我们的开发效率,当然仅仅会用还是不够的,理解其中的设计思想与原理才能更好地提高我们的开发水平。下面是自己对Java集合框架方面的学习总结。一、概述二、Collection接口1.List2.Set3.Queue三、Map接口l.HashMap实现原理2•其它Map实现类四、其它集合类五、总结一、概述在Java2Z前,Java是没
2、有完整的集合框架的。它只有一些简单的可以自扩展的容器类,比如Vector,Stack,Hashtable等。这些容器类在使用的过程中由于效率问题饱受诟病,因此在Java2中,Java设计者们进行了大刀阔斧的整改,重新设计,于是就有了现在的集合框架。需要注意的是,之前的那些容器类库并没有被弄用而是进行了保留,主要是为了向下兼容的目的,但我们在平时使用中还是应该尽量少用。:IteratorMAProducesICollodion3、isl:…一Ab$tcadS«tiSortedSetHashMapTretMapIdentflyHashMapUnkedHashMapHashSetTreeSeiUMceMshSetVecto<4StackWeakHashMap4、Hasht3bleComparable<►ComparatorJAbsfractSequentolbstJ1代J5、LinkedLiM6、Jdie集合框架从上面的集合框架图可以看到,Java集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射oCollection接口又有3种子类型,List>7、Set和Queue,再下面是一些抽象类,最后是具体实现类,常用的有ArrayList、LinkedList>HashSet>LinkedHashSet>HashMap>LinkedHashMap等等。二、Collection接口Collection接口是处理对象集合的根接口,其中定义了很多对元素进彳亍操作的方法,Abstractcollection是提供Collection部分实现的抽象类。下图展示了Collection接口中的全部方法。qsizefl:im0AisEmptyOboc2仃o*contoms(Ot^ect)hglrc•JterdJorO'zc0AtoArrayQObjec8、t]e1tcArr«y(TD)T>•1^dd(E)bcokanOaremove(Objert)hocoAcontoinsAlt(C©Uection►)booh-•1^ddAJI(Colle)buc0人removeAJI[Collection>)>aolrinQ:removelftPredicate):b心r”•'reUinAJI)匕;O'dearQvcd0'9、^ralWStre^mO心亡5»n-£:Collectionjg口结构其中,有几个比较常用的方法,比如方法add()添加一个元素到集合中,addAll()将指定集合中的所有元素添加到集合中,contains()方法检测集合中是否包含指定的元素,toArray()方法返冋一个表示集合的数组。Collection接口有三个子接口,下血详细介绍。1.ListList接口扩展自Collection,它可以定义一个允许重复的有序集合,从List接口中的方法来看,List接口主要是增加了面向位置的操作,允许在指定位置上操作元素,同吋增加了一个能够双向遍历线性表的新列表迭代器Listiterator10、oAbstractList类提供了List接口的部分实现,AbstractSequentialList扩展口AbstractList,主要是提供对链表的支持。下面介绍List接口的两个重要的具体实现类,也是我们可能最常用的类,ArrayList和LinkedListoArrayList通过阅读ArrayList的源码,我们可以很清楚地看到里面的逻辑,它是用数组存储元素的,这个数组可以动态创建,如果元素个数超过了数组的容量,那么就创建一个更大的新
3、isl:…一Ab$tcadS«tiSortedSetHashMapTretMapIdentflyHashMapUnkedHashMapHashSetTreeSeiUMceMshSetVecto<4StackWeakHashMap
4、Hasht3bleComparable<►ComparatorJAbsfractSequentolbstJ1代J
5、LinkedLiM
6、Jdie集合框架从上面的集合框架图可以看到,Java集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射oCollection接口又有3种子类型,List>
7、Set和Queue,再下面是一些抽象类,最后是具体实现类,常用的有ArrayList、LinkedList>HashSet>LinkedHashSet>HashMap>LinkedHashMap等等。二、Collection接口Collection接口是处理对象集合的根接口,其中定义了很多对元素进彳亍操作的方法,Abstractcollection是提供Collection部分实现的抽象类。下图展示了Collection接口中的全部方法。qsizefl:im0AisEmptyOboc2仃o*contoms(Ot^ect)hglrc•JterdJorO'zc0AtoArrayQObjec
8、t]e1tcArr«y(TD)T>•1^dd(E)bcokanOaremove(Objert)hocoAcontoinsAlt(C©Uection►)booh-•1^ddAJI(Colle)buc0人removeAJI[Collection>)>aolrinQ:removelftPredicate):b心r”•'reUinAJI)匕;O'dearQvcd0'9、^ralWStre^mO心亡5»n-£:Collectionjg口结构其中,有几个比较常用的方法,比如方法add()添加一个元素到集合中,addAll()将指定集合中的所有元素添加到集合中,contains()方法检测集合中是否包含指定的元素,toArray()方法返冋一个表示集合的数组。Collection接口有三个子接口,下血详细介绍。1.ListList接口扩展自Collection,它可以定义一个允许重复的有序集合,从List接口中的方法来看,List接口主要是增加了面向位置的操作,允许在指定位置上操作元素,同吋增加了一个能够双向遍历线性表的新列表迭代器Listiterator10、oAbstractList类提供了List接口的部分实现,AbstractSequentialList扩展口AbstractList,主要是提供对链表的支持。下面介绍List接口的两个重要的具体实现类,也是我们可能最常用的类,ArrayList和LinkedListoArrayList通过阅读ArrayList的源码,我们可以很清楚地看到里面的逻辑,它是用数组存储元素的,这个数组可以动态创建,如果元素个数超过了数组的容量,那么就创建一个更大的新
9、^ralWStre^mO心亡5»n-£:Collectionjg口结构其中,有几个比较常用的方法,比如方法add()添加一个元素到集合中,addAll()将指定集合中的所有元素添加到集合中,contains()方法检测集合中是否包含指定的元素,toArray()方法返冋一个表示集合的数组。Collection接口有三个子接口,下血详细介绍。1.ListList接口扩展自Collection,它可以定义一个允许重复的有序集合,从List接口中的方法来看,List接口主要是增加了面向位置的操作,允许在指定位置上操作元素,同吋增加了一个能够双向遍历线性表的新列表迭代器Listiterator
10、oAbstractList类提供了List接口的部分实现,AbstractSequentialList扩展口AbstractList,主要是提供对链表的支持。下面介绍List接口的两个重要的具体实现类,也是我们可能最常用的类,ArrayList和LinkedListoArrayList通过阅读ArrayList的源码,我们可以很清楚地看到里面的逻辑,它是用数组存储元素的,这个数组可以动态创建,如果元素个数超过了数组的容量,那么就创建一个更大的新
此文档下载收益归作者所有