首页 / JAVA / 第8章 Java集合
第8章 Java集合
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了第8章 Java集合,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2498字,纯文字阅读大概需要4分钟。
内容图文
![第8章 Java集合](/upload/InfoBanner/zyjiaocheng/840/1b200f32b1f3459fa14c5dbd4510e20e.jpg)
Java集合类是一种特别有用的工具类,可用于存储数量不等的对象,并可以实现常用的数据结构,Java集合还可用于保存具有映射关系的关联数组。Java集合大致可分为set、list、queue、map四种体系,其中set表示无序、不可重复的集合;list表示有序、重复的集合;map代表具有映射关系的集合;queue代表队列集合。
1:set集合
1:HashSet 类
HashSet是Set接口的典型实现,大多数时候使用Set集合时就是使用这个类实现。HashSet按Hash算法来存储集合中的元素,因此具有良好的存取和查找性能。
HashSet具有以下特点:(1):不能保证元素的排列顺序,顺序可能与添加顺序不同,顺序也有可能发生变化。(2):HashSet不是同步的,如果多个线程同时访问一个HashSet,则必须通过代码来保证其同步。(3):集合元素值可以是null。
当向HashSet集合中存入一个元素时,HashSet会调用该对象的HashCode()方法来得到该对象的HashCode值,然后根据该hashCode值决定该对象在HashSet中的存储位置,如果有两个元素通过equals()方法比较返回true,但它们的HashCode()方法返回值不相等,HashSet将会把它们存储在不同的位置,依然可以添加成功。HashSet集合判断两个元素相等的标准是两个对象通过equals()方法比较相等,并且两个对象的HashCode()方法返回值相等。
2:LinkedHashSet类
HashSet还有一个子类LinkedHashSet,LinkedHashSet集合也是根据元素的HashCode值来决定元素的存储位置的,但它同时使用链表维护元素的次序,这样使得元素看起来是以插入的顺序保存的。也就是说,当遍历LinkHashSet集合里的元素时,LinkedHashSet将会按元素的添加的顺序来访问集合里的元素。、
3:TreeSet类
TreeSet是StoredSet接口的实现类,TreeSort可以确保集合元素处于排序状态
2:List 集合
List集合代表元素有序,可重复的集合,集合元素都有其对应的顺序索引。List集合允许使用重复元素,可以通过索引类访问指定位置的集合元素。List集合默认按元素的添加顺序设置元素的索引。
1:ArrayList和Vector实现类
ArrayList和Vector类都是基于数组实现的List类,所以ArrayList和Vector类封装了一个动态的、允许在分配的Object[]数组。
3:Queue集合
Queue用于模拟队列这种数据结构,队列通常是指“先进先出”的容器。
1:PriorityQueue实现类
PriorityQueue是一个比较标准的队列实现类,因为PriorityQueue保存队列元素的顺序并不是按加入队列的顺序,而是按队列元素的大小进行重新排序。priorityQueue违反了“先进先出”原则。
4:Map集合
Map用于保存具有映射关系的数据,因此Map集合里保存着两组值(key和value),key和value都可以是任何引用类型的数据,key不允许重复。key和value之间存在单向一对一的关系,即通过指定的key,总能找到唯一的、确定的value。
如果把Map里的所有key放在一起来看,它们就组成了一个Set集合,实际上Map确实包含了一个keySet()方法,用于返回Map里所有key组成的Set集合。
如果把Map里的所有value放在一起来看,它们又非常类似于一个List,只是Map中的索引不在使用整数值,而是以另一个对象作为索引。
内容总结
以上是互联网集市为您收集整理的第8章 Java集合全部内容,希望文章能够帮你解决第8章 Java集合所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。