Java集合框架
皮皮go
无问西东
展开
-
Java集合系列之Map架构
1 Map架构2 Map定义Map是一个键值对(key-value)映射接口。Map中不能包含重复的键构造方法Map的实现类应提供两个“标准”的构造方法 无参构造方法,用于创建空映射 带有单个Map类型参数的构造方法,用于创建一个与其参数具有相同映射关系的新映射API Map接口提供三种collection视图,分别是键集、值集以及键值集 ...转载 2019-07-16 10:24:03 · 71 阅读 · 0 评论 -
Java集合系列之HashMap
1 定义散列表,存储的是键-值对 key、value都可以为空 映射无序 线程不安全 性能影响参数:初始容量和加载因子。当哈希表中桶的数目超过初始容量与加载因子的乘积时,要进行rehash操作。此时,桶的数量将加倍 默认加载因子0.752 构造函数 两个标准的构造方法 除此之外,一个指定容量大小的构造函数,一个指定容量大小和加载因子的构造函数 /...转载 2019-07-16 19:39:39 · 182 阅读 · 0 评论 -
手写一个ArrayList
实现了增删改查四项基本功能 实现了Iterator迭代器 实现了数组的动态扩容package basicKnowledge.集合框架.arrayList;import java.util.Iterator;import java.util.NoSuchElementException;import java.util.function.Consumer;/** * @p...原创 2019-07-18 16:09:03 · 101 阅读 · 0 评论 -
Java集合之fail-fast
1 fail-fast简介fail-fast是java集合(Collection)的一种错误机制 当多个线程对同一个集合的内容进行操作时,就可能产生fail-fast事件2 代码测试package basicKnowledge.集合框架.arrayList;import java.util.ArrayList;import java.util.Iterator;/*...原创 2019-07-19 16:42:11 · 188 阅读 · 0 评论 -
手写一个LinkedList
对主要的增删改查函数进行了实现package basicKnowledge.集合框架.linkedList;import basicKnowledge.集合框架.arrayList.MyArrayList;import java.util.Collection;import java.util.Iterator;import java.util.ListIterator;...原创 2019-07-23 15:38:41 · 101 阅读 · 0 评论 -
java集合转数组(Collection转array)
在JDK内置的集合框架中,Collection接口提供了集合转数组的的两个方法 Object[] toArray(); <T> T[] toArray(T[] a); 对于无参的toArray()函数,其返回值类型为Object[],此时不能强制转换成其他类型,若强转将会抛出ClassCastException异常代码测试packa...原创 2019-08-01 16:13:41 · 9246 阅读 · 0 评论 -
手写一个优先队列(PriorityQueue)
实现了优先队列的添加与删除方法优先队列利用最小堆来实现 主要方法:删除堆顶元素、添加元素后最小堆的维护代码实现package basicKnowledge.集合框架.priorQueue;import basicKnowledge.集合框架.queue.MyListQueue;import com.sun.xml.internal.bind.v2.schemagen.x...原创 2019-08-19 17:44:26 · 1255 阅读 · 0 评论