文章506
标签266
分类65
关于JDK8添加的Spliterator的一些理解

关于JDK8添加的Spliterator的一些理解

最近在看Java集合源码的时候研究了一下Spliterator, 发现了Spliterator的一些问题, 在这一篇中总结一下:

  • Spliterator源码解读

  • ArrayList中Spliterator的实现

  • LinkedList中Spliterator的实现

  • HashMap(Set)中Spliterator的实现


Java集合十-TreeNode与HashMap

Java集合十-TreeNode与HashMap

紧接着上一部分,这部分将深度分析HashMap中的TreeNode内部类(它是实现HashMap等链表和红黑树数据结构的类), 然后再回到HashMap中讲述HashMap中的问题, 以及HashMap的使用:

  • 数据结构Tree的发展史
  • HashMap中TreeNode的源码分析
  • HashMap中的hash冲突
  • HashMap中的Rehash操作
  • HashMap遍历方式(整表遍历, 并发遍历)

Java集合九-HashMap

Java集合九-HashMap

这一章,我们对HashMap进行学习

我们先对HashMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用HashMap。内容包括:

  • HashMap介绍
  • HashMap数据结构
  • HashMap源码深度解析(基于JDK11.0.4)

Java集合八-Map架构

Java集合八-Map架构

前面,我们已经系统的对List进行了学习。接下来,我们先学习Map,然后再学习Set;因为Set的实现类都是基于Map来实现的(如,HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的)


Java集合七-List总结(LinkedList, ArrayList使用场景及性能分析)

Java集合七-List总结(LinkedList, ArrayList使用场景及性能分析)

Java集合六-Stack

Java集合六-Stack

学完Vector了之后,接下来我们开始学习Stack。Stack很简单,它继承于Vector。学习方式还是和之前一样,先对Stack有个整体认识,然后再学习它的源码;最后再通过实例来学会使用它。内容包括:

  • Stack介绍
  • Stack源码解析(基于JDK11.0.4)
  • Stack示例

Java集合五-Vector

Java集合五-Vector

学完ArrayListLinkedList之后,我们接着学习Vector. 学习方式还是和之前一样,先对Vector有个整体认识,然后再学习它的源码;最后再通过实例来学会使用它:

  • Vector介绍
  • Vector数据结构
  • Vector源码解析(基于JDK11.0.4)
  • Vector遍历方式
  • Vector示例

Java集合四-LinkedList

Java集合四-LinkedList

前面,我们已经学习了ArrayList,并了解了fail-fast机制。这一章我们接着学习List的实现类——LinkedList

和学习ArrayList一样,我们先对LinkedList有个整体认识,然后再学习它的源码;最后再通过实例来学会使用LinkedList

内容包括:

  • LinkedList介绍
  • LinkedList数据结构
  • LinkedList源码解析(基于JDK11.0.4)
  • LinkedList遍历方式(整表遍历, 字表遍历, 并发遍历)

Java集合三-Iterator的Fail-Fast机制总结

Java集合三-Iterator的Fail-Fast机制总结

本篇以ArrayList为例, 总结了Java中出现的Fail-Fast(快速失败)机制

前面, 我们已经学习了ArrayList的源码. 接下来,我们以ArrayList为例,对Iterator的fail-fast机制进行了解, 内容包括:

  • fail-fast简介
  • fail-fast示例
  • fail-fast解决办法
  • fail-fast原理
  • JUC解决fail-fast的原理

Java集合二-ArrayList

Java集合二-ArrayList

在上一篇Java集合一-Collection架构,学习了Collection的架构。

这一章开始,我们对Collection的具体实现类进行讲解;首先,讲解List,而List中ArrayList又最为常用。因此,本章我们讲解ArrayList。先对ArrayList有个整体认识,再学习它的源码,最后再通过例子来学习如何使用它。内容包括:

  • ArrayList简介
  • ArrayList数据结构
  • ArrayList源码解析(基于JDK11.0.4)
  • ArrayList遍历方式(完整遍历, 子列表遍历, 并发遍历)
  • toArray()异常