java集合框架
来源:互联网 发布:淘宝服装的平铺和挂拍 编辑:程序博客网 时间:2024/06/07 03:40
Collection
Collection是java集合类的一个基本接口。其常用子接口包括List,Queue,Set。
1、List的常用实现类包括:ArrayList, LinkedList, Stack, Vector(已弃用)
|—Vector:数据结构是数组,且数组是可变长度的,线程同步的。
|—ArrayList:数据结构是数组,且数组是可变长度的,线程不同步的。优点是查询速度快,缺点是增删速度慢
|—LinkedList:链表结构,线程不同步,优点是增删速度快,缺点是查询速度慢
2、Set的常用实现类包括:HashSet, LinkedHashSet, TreeSet
Set最大的特点是不允许重复元素
|—HashSet:不保证存取的顺序,不允许存储重复元素,比数组查 询的效率高;该集合的数据结构是哈希表结构(散列表结构)
通过哈希算法算出的哈希值相同的情况就是哈希冲突,这种情况下,做进一步的判断是否存入的数据相同(equals方法),
|—TreeSet:不保证有序,同时使用元素的自然顺序对元素进行排序,或者根据创建 set 时提供的 Comparator 进行排序,具体取决于使用的构造方法。(TreeSet的比较器:元素本身具备的比较功能是自然排序,如果不需要自然排序,需要自定义排序方式,而且存储的TreeSet中的元素可能不具备比较功能。在这种情况下,可以使集合具备比较功能。 )
Map<K,V>
Map是集合类的另一个基本接口。Map是双列集合,一次存一对对象,也就是键值对。要保证键的唯一性。 其常用已知实现类为 HashMap, Hashtable,LinkedHashMap, TreeMap,
|—–HashTable:数据结构是哈希表,是同步的。不允许null键和null值。
|—–HashMap:数据结构是哈希表,是不同步的。允许null键和null值。(特别注意HashMap和HashTable的区别)
|—–TreeMap:数据结构是二叉树,不同步。可以对map集合中的键进行排序。
|—–LinkedHashMap:链表+哈希表结构,不同步。可以实现有序,因为有链表。可以保证唯一
集合命名技巧: jdk1.2以后出现的集合框架中的常用子类对象,存在的规律:前缀名是数据结构名,后缀名是所属体系名
- Java集合:集合框架
- 【Java】java集合框架
- [Java]Java集合框架
- JAVA集合框架和集合
- 【集合】Java集合框架介绍
- Java集合之集合框架
- [集合]Java的集合框架 Collection集合
- Java集合框架 (一)
- Java集合框架 (二)
- Java集合框架(三)
- Java集合框架
- 也来谈Java集合框架
- 也来谈Java集合框架
- Java集合框架 (一)
- Java集合框架
- 也来谈Java集合框架
- java集合框架
- Java集合框架总结
- Android 沉浸式
- iOS模仿安卓Material Design的涟漪动画按钮
- 历届试题 九宫重排 (bfs 康托判重)
- dwr实现消息精准推送
- linux 下 awk 命令截取
- java集合框架
- Java数据类型
- c:forEach varStatus属性
- 对于boostrap框架input校验问题
- linux shell下求文件的交集、并集、差集
- LeetCode 406 Queue Reconstruction by Height
- 《C和指针》——数组的奇怪形式
- HashMap的实现原理及hash冲突解决方法
- JVM基础篇——类的加载过程