一、集合框架整体介绍
集合框架可以大致分为两大家族:Collection、Map。
1、Collection家族
2、Map家族
相关博文:http://jianshi-dlw.iteye.com/blog/1179834(框架成员详细介绍)
二、具体场景下集合的选择
1. 集合中元素已知:优先考虑采用数组。
2. 集合中元素个数未知,且需要根据索引存取数据:采用ArrayList。
3. 集合中元素个数未知,且需要频繁插入和删除数据:采用LinkedList。
4. 集合中元素要求不重复,且没有顺序要求:采用HashSet。
5. 集合中元素要求不重复,且要求按插入顺序对集合进行遍历:采用LinkedSet。
6. 集合中元素要求不重复,且需要进行排序:采用TreeSet可SortedSet。
7. 集合中元素存在映射关系,且无顺序要求:采用HashMap。
8. 集合中元素存在映射关系,且需要按插入顺序进行遍历时:采用LinkedHashMap。
9. 集合中元素存在映射关系,且需要进行排序时:采用TreeMap或SortedMap。
10. 集合中元素个数未知,且需在多线程环境下进行集合元素的操作:采用Vector。
11. 集合中元素存在映射关系,且要求在多线程环境进行集合的操作:采用ConcurrentHashMap或HashTable。
三、实际应用
1.数组
(1)数组复制:Arrays.copyof()方法。
(2)数组转成列表:Arrays.asList()方法。
2.集合(Collection家庭成员)
(1)集合转成数组:toArray()方法。
(2)集合与集合间的合并:addAll()方法。
(3)判断是否包含某个元素:contains()方法。
(4)两个集合求交集:retainAll()方法。
(5)集合去除另一集合中包含的元素:removeAll()方法。
3.集合(Map家庭成员)
(1)Map的遍历:先调用entrySet()得到Set<Map.Entry<K,V>>集合,再调用iterator()进行迭代遍历;或者直接使用foreach()进行遍历。
(2)得到映射表中所有的value值:values()方法。
(3)判断是否包含key:containsKey()方法。
(4)删除某个映射关系:remove()方法。
4、扩展
(1)Set:set保证元素唯一的方法是根据equals方法进行判断,若希望set按照自定义的方式进行唯一性判断,需重写equals和hashCode方法。(写法可参考《Effective Java》第二版第8、9条)
(2)JDK自带的集合类已经非常全面,但是有些时候还是不够满足需求,这时可自行扩展或直接使用Apache的common-collections包。common-collections包非常强大,几乎包括了所有集合常用情况的解决方案,所以在想自己扩展集合框架的时候就直接把common-collections拿来用吧。(官网地址:http://commons.apache.org/proper/commons-collections/)
相关推荐
xmind格式的Java集合框架学习导图,包括Collection接口/Map接口以及具体实现类。 同样包含大厂面试题,也在导图中有所体现。 能学到什么: 更加成体系的知识框架,更加全面的、系统的知识。 思维导图: 思维导图具有...
集合是将多个元素组成一个单元的...Java集合框架,为我们提供了一套性能优良、使用方便的接口和类,我们不必再重新发明轮子,只需学会如何使用它们,就可以处理实际应用中出现的问题了Java集合框架位于java.util包中
Java集合框架使用总结 前言: 本文是对Java集合框架做了一个概括性的解说,目的是对Java集合框架体系有个总体认识,如果你想学习具体的接口和类的使用方法,请参看Java API文档。 一、概述 数据结构对程序设计...
Java集合框架 系统的介绍java集合框架的应用
学生通过学习方法描述和应用,可以逐步理解并有效地使用数据结构,还可以了解这些数据结构的多种实现,包括在Java集合框架中提供的一些实现。 本书内容非常丰富,且在每章章尾提供编程项目,以帮助学生提高实践能力...
本篇面试题集锦旨在帮助你更深入地了解Java集合框架的复杂概念和应用,以及如何准确解答与之相关的面试问题。通过这20道精心挑选的面试题和详细解析,你将能够在面试中脱颖而出,展现出对Java集合框架的熟练掌握和...
浅谈JAVA集合框架及其应用
浅谈JAVA集合框架及其应用.pdf
java集合框架的学习及应用
学生通过学习方法描述和应用,可以逐步理解并有效地使用数据结构,还可以了解这些数据结构的多种实现,包括在java集合框架中提供的一些实现。. 本书内容丰富,且在每章章尾提供编程项目,以帮助学生提高实践能力。...
Java集合框架总结,让你跟详细的了解Java中数据结构的实现与应用
Java集合框架在Web开发中的应用
Java集合框架常见面试题.pdf
Java集合框架常见面试题.7z
提供了20道高难度的Java集合框架面试题及详细答案解析,涵盖了List、Set、Map、Iterator、Collections类等关键概念和操作方法。从数据结构、线程安全性、性能...适合准备Java面试的开发者深入理解和应用Java集合框架。
学生通过学习方法描述和应用,可以逐步理解并有效地使用数据结构,还可以了解这些数据结构的多种实现,包括在Java集合框架中提供的一些实现。 本书内容非常丰富,且在每章章尾提供编程项目,以帮助学生提高实践能力...
学生通过学习方法描述和应用,可以逐步理解并有效地使用数据结构,还可以了解这些数据结构的多种实现,包括在Java集合框架中提供的一些实现。 本书内容非常丰富,且在每章章尾提供编程项目,以帮助学生提高实践能力...
学生通过学习方法描述和应用,可以逐步理解并有效地使用数据结构,还可以了解这些数据结构的多种实现,包括在Java集合框架中提供的一些实现。 本书内容非常丰富,且在每章章尾提供编程项目,以帮助学生提高实践能力...
既然您已经具备了一些集的理论,您应该能够更轻松的理解“集合框架”。 “集合框架”由一组用来操作对象的接口组成。不同接口描述不同类型的组。 在很大程度上,一旦您理解了接口,您就理解了框架。 虽然您总要创建...
集合框架练习 在 Java 中,集合框架(Java Collections Framework)是 ...集合框架是 Java 中非常重要的一部分,提供了多种数据结构和操作,可以满足不同的应用需求。熟悉集合框架的使用可以提高编程效率和代码质量。