- 1、本文档共41页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java集合框架之Collection实例解析讲义
Java集合框架之Collection实例解析1)集合的由来?Java是面向对象语言,操作很多对象,必要时需存储对象,常见容器(数组和StringBuffer或StringBuilder),而数组的长度固定,所以不适合做变化的需求,而StringBuffer(或StringBuilder)存储的是字符串,皆不符合要求。因此集合就应运而生了。2)集合和数组的区别?1:长度限制之别 - 数组长度是固定不变的 - 集合的大小是可变的2:可以存储的类型之别 - 一个数组存储的元素可以是基本类型,也可以是引用类型,且只能存储同一种类型的元素 - 一个集合存储的元素只能是引用类型,但集合可以存储不同类型的元素(但集合一般存储同一种类型)3)java集合框架初窥?图片来源于网络。类已经很全了,不用赘画了。1、Collection之继承体系下面列出了常用的Collection集合的继承关系。Collection |-----List 有序(存储顺序和取出顺序一致),可重复 |----ArrayList ,线程不安全,底层使用数组实现,查询快,增删慢。效率高。每次容量不足时,自增长度的一半,如下源码可知 int newCapacity = oldCapacity + (oldCapacity 1); |----LinkedList ,线程不安全,底层使用链表实现,查询慢,增删快。效率高 |----Vector ,线程安全,底层使用数组实现,查询快,增删慢。效率低每次容量不足时,默认自增长度的一倍(如果不指定增量的话),如下源码可知 int newCapacity = oldCapacity + ((capacityIncrement 0) ? capacityIncrement : oldCapacity); |-----Set 元素唯一一个不包含重复元素的 collection。更确切地讲,set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2,并且最多包含一个 null 元素。 |--HashSet 底层是由HashMap实现的,通过对象的hashCode方法与equals方法来保证插入元素的唯一性,无序(存储顺序和取出顺序不一致),。 |--LinkedHashSet 底层数据结构由哈希表和链表组成。哈希表保证元素的唯一性,链表保证元素有序。(存储和取出是一致) |--TreeSet 基于 TreeMap 的 NavigableSet 实现。使用元素的自然顺序对元素进行排序,或者根据创建 set 时提供的 Comparator 进行排序,具体取决于使用的构造方法。元素唯一。2、Collection泛型接口方法摘要boolean add(E e) 确保此 collection 包含指定的元素(可选操作)。boolean addAll(Collection? extends E c) 将指定 collection 中的所有元素都添加到此 collection 中(可选操作)。 void clear() 移除此 collection 中的所有元素(可选操作)。boolean contains(Object o) 如果此 collection 包含指定的元素,则返回true。boolean containsAll(Collection? c) 如果此 collection 包含指定 collection 中的所有元素,则返回true。booleanequals(Object o) 比较此 collection 与指定对象是否相等。 int hashCode() 返回此 collection 的哈希码值。boolean isEmpty() 如果此 collection 不包含元素,则返回true。 IteratorE iterator() 返回在此 collection 的元素上进行迭代的迭代器。boolean remove(Object o) 从此 collection 中移除指定元素的单个实例,如果存在的话(可选操作)。boolean removeAll(Collection? c) 移除此 collection 中那些也包含在指定 collection 中的所有元素(可选操作)。boolean retainAll(Collection? c) 仅保留此 collection 中那些也包含在指定 collection 的元素
您可能关注的文档
- JavaEE-单元2任务2权限管理讲义.ppt
- I‘mmoreoutgoingthanmysisterSectionA(1a-1c)讲义.ppt
- JavaScript 常用功能总结讲义.doc
- JavaScript-5讲义.ppt
- Javascript学习笔记讲义.doc
- JavaScript教程--从入门到精通讲义.ppt
- JavaScript的使用和方法讲义.ppt
- Java2D3D讲义.ppt
- JavaScript讲义.doc
- JavaScript讲解讲义.ppt
- 基于人工智能教育平台的移动应用开发,探讨跨平台兼容性影响因素及优化策略教学研究课题报告.docx
- 高中生物实验:城市热岛效应对城市生态系统服务功能的影响机制教学研究课题报告.docx
- 信息技术行业信息安全法律法规研究及政策建议教学研究课题报告.docx
- 人工智能视角下区域教育评价改革:利益相关者互动与政策支持研究教学研究课题报告.docx
- 6 《垃圾填埋场渗滤液处理与土地资源化利用研究》教学研究课题报告.docx
- 小学音乐与美术教师跨学科协作模式构建:人工智能技术助力教学创新教学研究课题报告.docx
- 《航空航天3D打印技术对航空器装配工艺的创新与效率提升》教学研究课题报告.docx
- 教育扶贫精准化策略研究:人工智能技术在区域教育中的应用与创新教学研究课题报告.docx
- 《区块链技术在电子政务电子档案管理中的数据完整性保障与优化》教学研究课题报告.docx
- 《中医护理情志疗法对癌症患者心理状态和生活质量提升的长期追踪研究》教学研究课题报告.docx
文档评论(0)