《java中的各集合类.docVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《java中的各集合类

Java中集合类的区别(一)  Array是数组,不在集合框架范畴之内,一旦选定了,它的容量大小就不能改变了,所以通常在编程中不选用数组来存放.   集合 :   集合对象:用于管理其他若干对象的对象   数组:长度不可变   List: 有顺序的,元素可以重复   遍历:for 迭代   排序:Comparable Comparator Collections.sort()   ArrayList:底层用数组实现的List   特点:查询效率高,增删效率低 轻量级 线程不安全   LinkedList:底层用双向循环链表 实现的List   特点:查询效率低,增删效率高   Vector: 底层用数组实现List接口的另一个类   特点:重量级,占据更多的系统开销 线程安全   Set:无顺序的,元素不可重复(值不相同)   遍历:迭代   排序:SortedSet   HashSet:采用哈希算法来实现Set接口   唯一性保证:重复对象equals方法返回为true   重复对象hashCode方法返回相同的整数   不同对象 哈希码 尽量保证不同(提高效率)   SortedSet:对一个Set排序   TreeSet:在元素添加的同时,进行排序。也要给出排序规则   唯一性保证:根据排序规则,compareTo方法返回为0,就可以认定两个对象中有一个是重复对象。   Map:元素是键值对 key:唯一,不可重复 value:可重复   遍历:先迭代遍历key的集合,再根据key得到value   HashMap:轻量级 线程不安全 允许key或者value是null   Hashtable:重量级 线程安全 不允许key或者value是null   Properties:Hashtable的子类,key和value都是String   SortedMap:元素自动对key排序   TreeMap:   集合是指一个对象可以容纳了多个对象(不是引用),这个集合对象主要用来管理维护一系列相似的对象。   集合接口类层次 :   位于package java.util.*;   Collection   ↑   |ˉˉˉˉˉˉ|   Set List Map   ↑ ↑   | |   SortedSet SortedMap   1) Set: 集合类中不允许有重复对象;   2) SortedSet: 和Set接口同,但元素按升序排列;   3) List: 元素加载和移出时按照顺序,可以保存重复对象。   4) Map: (key-value对)存储了唯一关键字辨识和对应的值。   5) SortedMap: 和Map类同,但对象按他们关键字的升序排列。   集合类层次 :   (注:JAVA1.5对JAVA1.4的最大改进就是增加了对范型的支持)   Collection   ↑   |ˉˉˉˉˉˉ|   HashSet LinkedList Hashtable   (Set) Vector, ArrayList Hashmap   (List) (Map)   ↑ ↑   | |   TreeSet TreeMap   (SortedSet) (SortedMap)   Collection接口的方法:   add(Object o)   addAll(Collection c)   contains(Object o)   containsAll(Collection c)   remove(Object o)   removeAll(Collection c)   clear()   equals(Object o)   isEmpty()   iterator()   size()   toArray()   toArray(Object[] o)   五个最常用的集合类之间的区别和联系:   1.ArrayList: 元素单个,效率高,多用于查询   2.Vector: 元素单个,线程安全,多用于查询   3.LinkedList:元素单个,多用于插入和删除   4.HashMap: 元素成对,元素可为空   5.HashTable: 元素成对,线程安全,元素不可为空   ArrayList   底层是Object数组,所以ArrayList具有数组的查询速度快的优点以及增删速度慢的缺点。   而在LinkedList的底层是一种双向循环链表。在此链表上每一个数据节点都由三部分组成:前指针(指向前面的节点的位置),数据,后指针(指向后面的节点的位置)。最后一个节点的后指针指向第一个节点的前指针,形成一个循环。   双向循环链表的查询效率低但是增删效率高。   ArrayList和LinkedList在用法

文档评论(0)

yingrong + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档