Java底层
我不太难
这个作者很懒,什么都没留下…
展开
-
【java】ConcurrentHashMap1.7源码详解
目录前言HashTable与ConcurrentHashMap数据结构前言随着高并发时代的到来,原有的HashMap已经不能满足基本的需求,在HashMap1.7中,多线程下可能出现的的死循环是致命的。但在java api的juc包中有这样一个类:ConcurrentHashMap,它基于HashMap1.7且线程是安全的,本篇博文会仔细对它进行讲解。强烈建议,在阅读本篇博文前,先阅读 Has...原创 2020-01-16 15:02:11 · 888 阅读 · 1 评论 -
【java】LinkedList1.8源码详解
目录前言概要属性构造方法核心方法get(int index)set(int index, E element)add(int index, E element)addAll(Collection<? extends E> c)remove(int index)contains(Object o)toArray()listIterator(int index)队列、堆栈总结前言Lin...原创 2019-12-26 00:19:16 · 485 阅读 · 0 评论 -
【java】ArrayList1.8源码详解
目录前言概要属性构造方法Arrays.copyOf()核心方法get(int index)set(int index, E element)前言ArrayList是java编程中最常用的工具类之一,它解决了普通数组无法自动扩容的问题,是一个非常简单而又强大的工具,本篇博文将带你揭开ArrayList1.8神秘的面纱。概要public class ArrayList<E> ext...原创 2019-12-25 00:06:00 · 423 阅读 · 0 评论 -
【java】HashMap1.8源码详解
目录前言概要数据结构Node类 普通结点TreeNode类 树结点属性构造方法核心方法get(Object key)put(K key, V value)resize() - 多线程的数据丢失问题remove(Object key)containsValue(Object value)forEach(BiConsumer<? super K, ? super V> action)总结...原创 2019-12-21 17:57:33 · 377 阅读 · 0 评论 -
【java】HashMap1.7源码详解
前言Hashmap是java api中一个非常强大的工具类,所以剖析它的源码就显得很有必要了;强调,本篇博文面向的是熟知Hashmap基本使用的编程者。数据结构在jdk1.7中Hashmap的基本数据结构是数组+链表的形式。使用过Hashmap的同学都知道,它可以保存一对<key, value>,所以又是怎么放进数组的呢?答案是,在Hashmap中有一个内部类Entry,每添...原创 2019-12-17 22:30:30 · 778 阅读 · 0 评论 -
【java】Integer.highestOneBit(int i)详解
前言作用:在Integer类中有这么一个方法,你可以给它传入一个 int 类型的数值,它将返回其二进制最高位1的权值。这个方法就是highestOneBit(int i)。请看下面的Demo,注意方法的输入与返回值:System.out.println(Integer.highestOneBit(7)); // 输出4System.out.println(Integer.highestO...原创 2019-11-27 00:10:11 · 347 阅读 · 0 评论