![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
集合
Riven_77
存疑的知识点
展开
-
PriorityQueue
1-创建时,提供比较器,保证最高、最低优先级在队列头部。 2-遍历,无序。 3-按自然顺序排列。 4-不允许null值。 5-线程不安全。原创 2017-08-17 17:00:25 · 109 阅读 · 0 评论 -
Collection&Collections
Collection: 集合的父接口(List,Set)。 Collections: 集合类的帮助类。 搜索、排序、线程安全化、静态方法实现。原创 2017-08-20 11:37:41 · 126 阅读 · 0 评论 -
Iterator迭代器
Iterator迭代器:hastNext 1-遍历List,Set集合。 2-只能向前遍历。 3-可以在迭代过程中删除底层元素集合。 ListIterator: 1-只能遍历List。 2-可以向前、向后遍历。 3-实现Iterator接口,增加元素、替换元素、获取前后元素索引。原创 2017-08-20 13:12:29 · 122 阅读 · 0 评论 -
ArrayList
Array数组: 1-基本类型、对象类型。 2-大小固定。 ArrayList集合: 1-对象类型。 2-大小动态变化。 3-方法:addAll(),removeAll(),iterator().... 4-默认大小为10个元素,HashMap默认大小为16。原创 2017-08-06 15:04:39 · 112 阅读 · 0 评论 -
Vector
Vector: 1-线程安全,synchronized同步。 2-性能差。 3-数据增长,一倍。 ArrayList: 1-线程不安全,不同步。 2-性能好。 3-数据增长,一半。 LinkedList: 1-双向,增删快,查询慢。原创 2017-08-06 15:27:45 · 99 阅读 · 0 评论 -
LinkedList
LinkedList: 1-元素列表形式存储0(n)。 2-增删快、查询慢。 3-占内存大,两个指向。1个节点,2个引用。 ArrayList: 1-基于索引,底层是数组0(1)。 2-增删慢、查询快。当有元素进行增删,需要更新索引,重新计算。 3-占内存小,单向。原创 2017-08-06 15:07:27 · 102 阅读 · 0 评论 -
HashSet
HashSet: 1-底层用HashMap来实现。 2-只允许存储一个null。 3-元素无序,不可重复。 4-hashCode()与equals()。hashCode存储的是地址值,equals()要new对象进行比较,占内存。故先用hashCode比较,再用equals()比较操作。 TreeSet: 1-树形结构,元素有序。原创 2017-08-06 15:38:05 · 166 阅读 · 0 评论 -
HashMap/HashTable
HashMap: 1-key/value。hashcode(),equals().key,put()方法,若存在key值,则替换更新。 2-允许键是null(1个),适用于单线程。 3-快。 4-JAVA1.2。 HashTable: 1-不允许键值为null。同步的,使用多线程。 2-慢。 3-JDK1 WeakHashMap: 1-key对象未被引用,key/value被回原创 2017-08-06 16:34:01 · 110 阅读 · 0 评论