1 + 1=王
CSDN博客专家;
CSDN优质创作者;
阿里云社区专家博主;
华为云云享专家;
51CTO专家博主;
热爱JAVA的计算机科学与技术(人工智能)研究生在读;
全国大学生计算机设计大赛国家二等奖;
三维数字化创新设计大赛四川省特等奖、国家三等奖;
蓝桥杯全国软件与信息技术专业人才大赛三等奖;
MathorCup数学建模挑战赛三等奖.
展开
-
【Queue】- 从源码分析PriorityQueue及其常用方法
【Queue】- 从源码分析PriorityQueue及其常用方法原创 2022-11-26 09:05:30 · 7406 阅读 · 91 评论 -
【Queue】- 从源码分析ArrayDeque及其常用方法
是Queue和Deque接口的基础集合。ArrayDeque继承至AbstractCollection并实现了Deque, Cloneable, Serializable接口,支持可复制以及序列化操作。ArrayDeque集合是一个基于可循环双指针数组(可扩容)结构实现的双端队列,它既有队列、双端队列的特点,又有栈结构的特点,可用来代替Stack集合进行栈结构的操作。原创 2022-10-24 08:54:20 · 9253 阅读 · 122 评论 -
从源码分析UUID类的常用方法
UUID类位于java.util包下,它表示一个不可变通用唯一标识符(universally unique identifier)的类,每一个UUID占用128位。..原创 2022-08-08 07:30:00 · 4266 阅读 · 65 评论 -
【java枚举的使用】 - 从源码分析Enum类
java枚举的使用自定义枚举类关键字enum的使用从源码分析Enum类的主要方法实现接口的枚举类枚举类用于声明一组命名的常数,当一个变量有几种可能的取值时,可以将它定义为枚举类型。例如:星期:星期一、星期二、星期三、星期四、星期五、星期六、星期天;性别:男、女;季节:春、夏、秋、冬;线程状态:创建、就绪、运行、阻塞、终止;…。当需要定义一组常量时,强烈建议使用枚举类。自定义枚举类构造线程状态(创建、就绪、运行、阻塞、终止)枚举类。//自定义枚举类class State{原创 2022-02-16 21:45:00 · 6879 阅读 · 6 评论 -
java中线程池核心API源码分析
文章目录概述源码分析ExecutorExecutorServiceScheduledExecutorServiceThreadPoolExecutorScheduledThreadPoolExecutor概述线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务。线程池线程都是后台线程。每个线程都使用默认的堆栈大小,以默认的优先级运行,并处于多线程单元中。如果某个线程在托管代码中空闲(如正在等待某个事件),则线程池将插入另一个辅助线程来使所有处理器保持繁忙。如果所有线原创 2022-01-22 21:31:56 · 6670 阅读 · 0 评论 -
【java高性能编程基础】 - 线程封闭与ThreadLocal源码分析
文章目录线程封闭的概念ThreadLocal解析ThreadLocal类的定义ThreadLocal类中提供的方法构造方法成员方法ThreadLocal示例线程封闭的概念在多线程访问共享可变数据时,就会涉及到线程间数据同步的问题。如果数据都被封闭在各自的线程之中,就不需要同步了,也不会出现线程安全的问题了。这种通过将数据封闭在线程中而避免使用同步的技术就叫线程封闭。实现线程封闭的方法有多种,比如ad-hoc线程封闭局部变量ThreadLocalThreadLocal解析ThreadLoc原创 2022-01-12 22:30:00 · 6535 阅读 · 2 评论 -
【java高性能编程基础】- java中线程的六种状态,线程状态变化的几种类型
文章目录从源码看Thread中定义的六种线程状态从源码看Thread中定义的六种线程状态原创 2021-12-31 20:45:00 · 6719 阅读 · 5 评论 -
从源码分析Arrays类的常用方法
文章目录Arrays类概述常用方法排序sort搜索binarySearch比较equals填充fill赋值copyOf将数组转换成列表asList获取哈希码hashCodetoStringArrays类概述Arrays类在源码中的声明:/** * This class contains various methods for manipulating arrays (such as * sorting and searching). This class also contains a stati原创 2021-12-30 20:45:48 · 6687 阅读 · 4 评论 -
DualPivotQuicksort源码
package java.util;/** * This class implements the Dual-Pivot Quicksort algorithm by * Vladimir Yaroslavskiy, Jon Bentley, and Josh Bloch. The algorithm * offers O(n log(n)) performance on many data sets that cause other * quicksorts to degrade to qua原创 2021-12-29 09:53:13 · 145 阅读 · 0 评论 -
从源码分析Object类的常用方法
从源码分析Object类的常用方法getClass()hashCode()equals(Object obj)clone()toString()notify()notifyAll()wait(long timeout)wait(long timeout, int nanos)wait()finalize()Object类位于java.lang包中,每个类都有Object作为超类,包括我们自定义的类,定义Java类时如果没有显示的指明父类,那么就默认继承了 Object 类。。 所有对象(包括数组)都实现了原创 2021-12-11 20:48:10 · 6592 阅读 · 0 评论 -
【攻克java集合系列(完结)】Java集合全面总结
【攻克java集合系列(完结)】List系列合集:【攻克java集合系列(一)】java集合中的List系列集合全面分析ArrayList从源码分析ArrayList集合LinkedList从源码分析LinkedList集合VectorQueue队列全面分析:【攻克java集合系列(二)】java集合中的Queue队列全面分析**Set系列合集:TODOHashSet从源码分析HashSet集合**Map系列合集:TODOTODOTODOTODOTODO其他补充内原创 2021-12-06 20:00:00 · 6962 阅读 · 5 评论 -
【攻克java集合系列(四)】java集合中的Map系列集合全面分析
之前所介绍的List、Set、Queue系列集合都是由Collection派生出来的,今天我们来分析java集合的另一个分支——Map集合。文章目录Map系列集合中的继承实现关系Map集合简介Map接口源码分析接口方法默认实现的方法Map.EntryHashMap、TreeMap与HashTableHashMapTreeMapHashTableHashMap、TreeMap、HashTable、LinkedHashMap之间的比较Map系列集合中的继承实现关系建议大家先看完本文再回过头来思考这张图。原创 2021-12-06 15:00:00 · 1082 阅读 · 0 评论 -
从源码分析TreeMap
从源码分析TreeMap简介构造方法TreeMap()TreeMap(Comparator<? super K> comparator)TreeMap(Map<? extends K, ? extends V> m)TreeMap(SortedMap简介TreeMap的继承实现关系图谱:TreeMap是基于红黑树实现的一种map集合。红黑树参考链接:https://blog.csdn.net/weixin_43598687/article/details/121732144原创 2021-12-05 19:16:28 · 4886 阅读 · 0 评论 -
从源码分析SortedMap与NavigableMap
从源码分析SortedMap与NavigableMapSortedMap基本方法NavigableMap基本方法SortedMapMap集合本身不具有排序的功能,SortedMap接口就提供了排序的操作。SortedMap直接继承至Map接口。public interface SortedMap<K,V> extends Map<K,V>基本方法SortedMap接口中声明了一些操作Map集合的基本方法。public interface SortedMap<E&原创 2021-12-05 19:08:34 · 4818 阅读 · 0 评论 -
从源码分析哈希表HashMap
从源码分析哈希表HashMap简介构造方法HashMap(int initialCapacity, float loadFactor)HashMap(int initialCapacity)HashMap()HashMap(Map<? extends K, ? extends V> m)HashMap.Node常用方法int size()boolean isEmpty()V get(Object key)boolean containsKey(Object key)V put(K key, V原创 2021-12-04 16:13:58 · 5125 阅读 · 2 评论 -
【攻克java集合系列(三)】java集合中的Set系列集合全面分析
之前我们已经对List集合进行了比较深入的分析,加下来轮到Set集合了,开干!文章目录原创 2021-12-03 20:02:37 · 4954 阅读 · 0 评论 -
从源码分析SortedSet与NavigableSet
从源码分析SortedSet与NavigableSetSortedSet基本方法NavigableSet基本方法SortedSetSet集合本身不具有排序的功能,SortedSet接口就提供了排序的操作。SortedSet直接继承至Set接口。public interface SortedSet<E> extends Set<E>基本方法SortedSet接口中声明了一些操作Set集合的基本方法。public interface SortedSet<E>原创 2021-12-02 16:27:21 · 4136 阅读 · 0 评论 -
从源码分析TreeSet集合(树集)
从源码分析TreeSet简介构造方法TreeSet()TreeSet(Comparator<? super E> comparator)TreeSet(Collection<? extends E> c)TreeSet(SortedSet s)常用方法Iterator iterator()Iterator descendingIterator()int size()boolean isEmpty()boolean contains(Object o)boolean add(E e)b原创 2021-12-02 15:14:06 · 5043 阅读 · 0 评论 -
从源码分析HashSet集合
从源码分析HashSet集合简介构造函数HashSet()HashSet(Collection<? extends E> c)HashSet(int initialCapacity, float loadFactor)HashSet(int initialCapacity)常用方法Iterator iterator()int size()boolean isEmpty()boolean contains(Object o)boolean add(E e)boolean remove(Object原创 2021-12-01 10:57:39 · 4741 阅读 · 0 评论 -
【攻克java集合系列(二)】java集合中的Queue队列全面分析
从源码分析Queue队列Queue队列系列集合的继承实现关系。队列的介绍Queue源码分析DequeAbstractQueueArrayDequeQueue队列系列集合的继承实现关系。队列的介绍队列是一种特殊的线性结构。它只允许在表头进行删除操作,而在表尾进行插入操作。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列的数据元素又称为队列元素。在队列中插入一个队列元素称为入队,从队列中删除一个队列元素称为出队。因为队列只允许在一端插入,在另一端删除,所以只有最早进入队列的元素才能最先从队列中原创 2021-11-30 15:46:10 · 5411 阅读 · 0 评论 -
【攻克java集合系列(一)】java集合中的List系列集合全面分析
java中的集合是一个庞大的体系,从现在开始我们一起来揭开java集合的神秘面纱。今天先从List系列集合出发,然后逐步攻克java中庞大的集合体系。文章目录List集合的有序性与可重复性List集合源码分析继承于Collection中的方法List中新声明的方法ArrayList、LinkedList和VectorArrayListLinkedListVectorList集合的有序性与可重复性List常称为列表,它是java集合大家庭中一个分支。list集合位于java.util.List包中,它原创 2021-11-29 19:30:08 · 5232 阅读 · 1 评论 -
从源码分析LinkedList集合
从源码分析LinkedList集合简介构造方法LinkedList()LinkedList(Collection<? extends E> c)常用方法int size()E getFirst()E getLast()E removeFirst()E removeLast()void addFirst(E e)void addLast(E e)boolean contains(Object o)int indexOf(Object o)int lastIndexOf(Object o)向列表中添原创 2021-11-29 16:14:30 · 5334 阅读 · 0 评论 -
从源码分析ArrayList集合
从源码分析ArrayList集合简介构造函数ArrayList()ArrayList(int initialCapacity)ArrayList(Collection<? extends E> c)常用方法int size()boolean isEmpty()boolean contains(Object o)int indexOf(Object o)int lastIndexOf(Object o)Object clone()Object[] toArray()E get(int index)原创 2021-11-28 19:37:09 · 4778 阅读 · 0 评论 -
从源码分析Integer缓存机制IntegerCache和自动拆箱装箱解析
Integer的自动拆箱装箱解析IntegerCache自动拆箱与装箱IntegerCache自动拆箱与装箱原创 2021-11-27 20:22:05 · 4821 阅读 · 0 评论 -
从源码分析Integer类
从源码分析Integer类Integer的类定义Integer类中的字段(Fileds)和构造方法FiledsConstructorInteger类的常用方法1. static int bitCount(int i)2. static int compare(int x, int y)3. int compareTo(Integer anotherInteger)4. static Integer decode(String nm)5. Integer转换为基本类型(byteValue、shortValue原创 2021-11-26 15:42:42 · 4824 阅读 · 0 评论 -
从源码分析String、StringBuffer、StringBuilder之间的区别与联系
文章目录String、StringBuffer、StringBuilder类的定义区别一String、StringBuffer、StringBuilder的构造函数区别二StringBuffer、StringBuilder的部分方法区别三总结String、StringBuffer、StringBuilder类的定义我们首先来分析以下String、StringBuffer、StringBuilder三个类在源码中的定义:Stringpublic final class String imp原创 2021-11-24 18:27:33 · 5017 阅读 · 0 评论 -
从源码分析String类中的常用方法
从源码分析String类中的常用方法0.构造方法1.char charAt(int index)2.int compareTo(String anotherString)3.String concat(String str)4.boolean contains(CharSequence s)5.boolean startsWith(String prefix, int toffset)6.boolean endsWith(String suffix)7.boolean equals(Object anObj原创 2021-11-23 21:09:40 · 4917 阅读 · 0 评论