- 博客(26)
- 资源 (3)
- 收藏
- 关注
原创 java集合系列18讲目录索引
【Java】 集合系列01(总体框架) 【Java】 集合系列02( Collection) 【Java】 集合系列03(ArrayList详细介绍[源码解析]和使用示例) 【Java】集合系列04(通过ArrayList来说明fail-fast的原理、解决办法) 【Java】集合系列05(LinkedList详细介绍源码解析和使用示例) 【Java】集合系列06(Vector详细介绍源...
2018-07-28 16:19:02 891
原创 【Java】多线程系列07( join()、interrupt()和线程终止方式)
对Thread中join()、interrupt()中断和终止方式进行介绍。涉及到的内容包括:1、join()介绍2、join()源码分析(基于JDK1.8)3、join()示例4、interrupt()说明5、终止线程的方式5.1、终止处于“阻塞状态”的线程2.2、终止处于“运行状态”的线程6、终止线程的示例7、interrupted() 和 isInterr...
2018-07-31 15:28:32 1075
原创 【Java】多线程系列06(线程让步与休眠)
对Thread中的线程让步方法yield()和Thread中sleep()方法进行介绍。涉及到的内容包括:1、yield()介绍2、yield()示例3、yield() 与 wait()的比较4、sleep()介绍5、sleep()示例6、sleep() 与 wait()的比较1、yield()介绍yield()的作用是让步。它能让当前线程由“运行状态”进入到...
2018-07-31 14:29:37 319
原创 【Java】多线程系列05(线程等待与唤醒)
1、wait(),notify(),notifyAll()等方法介绍2、wait()和notify()示例3、wait(long timeout)和notify()4、wait() 和 notifyAll()5、为什么notify(), wait()等函数定义在Object中,而不是Thread中1、wait(),notify(),notifyAll()等方法介绍在...
2018-07-30 15:11:16 346
原创 【Java】多线程系列04(synchronized关键字)
对synchronized关键字进行介绍。涉及到的内容包括:1、synchronized原理2、synchronized基本规则3、synchronized方法 和 synchronized代码块4、实例锁和全局锁1、synchronized原理在java中,每一个对象有且仅有一个同步锁。这也意味着,同步锁是依赖于对象而存在。当我们调用某对象的synchron...
2018-07-30 09:37:14 270
原创 【Java】多线程系列03(Thread中start()和run()的区别)
概要Thread类包含start()和run()方法,它们的区别是什么?本章内容包括:概要1、start() 和 run()的区别说明2、start() 和 run()的区别示例3、start() 和 run()相关源码(基于JDK1.8)1、start() 和 run()的区别说明start():它的作用是启动一个新线程,新线程会执行相应的run()方法...
2018-07-28 16:04:10 264
原创 【Java】多线程系列02(常用的实现多线程的两种方式)
常用的实现多线程的2种方式:Thread 和 Runnable。 说常用是因为通过还可以通过java.util.concurrent包中的线程池来实现多线程。先对的Thread和Runnable进行了解。本章内容包括:1、Thread和Runnable简介2、Thread和Runnable的异同点3、Thread和Runnable的多线程示例3.1 Thread的多线程示例3...
2018-07-27 10:54:25 261
原创 【Java】多线程系列01(基本概念)
多线程是Java中的一个重要主体。我们将展开对多线程的学习。接下来的内容,是对“JDK中新增JUC包”之前的Java多线程内容的讲解,涉及到的内容包括,Object类中的wait(),notify()等接口;Thread类中的接口;synchronized关键字。注:JUC包是指,Java.util.concurrent包,它是由Java大师Doug Lea完成并在JDK1.5版本添加到Jav...
2018-07-27 10:09:40 321
原创 【Java】集合系列18(Arrays和Collections工具类)
1、Arrays类1.1Arrays常用方法实例asListsort排序和parallelSort并行排序binarySearchcopyOfdeepEquals深度比较、deepHashCode生成hashcode、deepToString深度打印equals比较filltoStringtoStreamparallelPrefix2、Collectio...
2018-07-27 09:12:46 1536
原创 【Java】集合系列17(Iterator和Enumeration比较)
概要Iterator和Enumeration进行比较学习。内容包括:概要1、Iterator和Enumeration区别2、Iterator和Enumeration实例1、Iterator和Enumeration区别在Java集合中,我们通常都通过 “Iterator(迭代器)” 或 “Enumeration(枚举类)” 去遍历集合。今天,我们就一起学习一下它们...
2018-07-21 19:23:28 278
原创 【Java】集合系列16(TreeSet详细介绍源码解析和使用示例)
概要先对TreeSet有个整体认识,然后再学习它的源码,最后再通过实例来学会使用TreeSet。内容包括:概要1、TreeSet介绍2、TreeSet数据结构3、TreeSet源码解析(基于JDK1.8)4、TreeSet遍历方式4.1 Iterator顺序遍历4.2 Iterator顺序遍历4.3 for-each遍历HashSet5、TreeSet示例...
2018-07-21 18:07:25 375
原创 【Java】集合系列15(Set架构及HashSet详细介绍源码解析和使用示例)
前面,我们已经系统的对List和Map进行了学习。接下来,我们开始可以学习Set。相信经过Map的了解之后,学习Set会容易很多。毕竟,Set的实现类都是基于Map来实现的(HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的)。1、Set架构。2、HashSet介绍3、HashSet数据结构4、HashSet源码解析(基于JDK1.8)5、Hash...
2018-07-21 12:21:37 378
原创 【Java】集合系列14(Map总结HashMap, Hashtable, TreeMap, WeakHashMap等使用场景)
概要概要1、Map概括2、HashMap和Hashtable异同2.1HashMap和Hashtable的相同点2.2HashMap和Hashtable的不同点2.2.1 继承和实现方式不同2.2.2 线程安全不同2.2.3 对null值的处理不同2.2.4 支持的遍历种类不同2.2.5 通过Iterator迭代器遍历时,遍历的顺序不同2.2.6 容量的初始值 和 ...
2018-07-20 15:59:23 288
原创 【Java】集合系列13(WeakHashMap详细介绍源码解析和使用示例)
概要先对WeakHashMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用WeakHashMap。1、WeakHashMap介绍WeakHashMap简介WeakHashMap 继承于AbstractMap,实现了Map接口。 和HashMap一样,WeakHashMap也是一个散列表,它存储的内容也是键值对(key-value)映射,而且键和值都可以是...
2018-07-20 13:27:37 293
原创 【Java】集合系列12(TreeMap详细介绍源码解析和使用示例)
概要对TreeMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用TreeMap。内容包括:概要1、TreeMap介绍2、TreeMap数据结构3、TreeMap源码解析(基于JDK1.8)3.1、TreeMap的红黑树相关内容3.1.1 红黑树的节点颜色–红色3.1.2 红黑树的节点颜色–黑色3.1.3 “红黑树的节点”对应的类。3.1.4 左旋3....
2018-07-20 09:55:24 1351
原创 【Java】集合系列11(Hashtable详细介绍源码解析和使用示例)
概要先对Hashtable有个整体认识,然后再学习它的源码,最后再通过实例来学会使用Hashtable。概要1、Hashtable介绍2、Hashtable数据结构3、Hashtable源码解析(基于JDK1.8)3.1、Hashtable的“拉链法”相关内容3.1.1 Hashtable数据存储数组3.1.2 数据节点Entry的数据结构3.2、Hashtabl...
2018-07-19 14:59:03 312
原创 【Java】集合系列10(HashMap详细介绍源码解析和使用示例)
概要1、HashMap介绍2、HashMap数据结构3.1、 HashMap的“拉链法”相关内容3.1.1 HashMap数据存储数组3.1.2 数据节点Entry的数据结构3.2、HashMap的构造函数3.3、HashMap的主要对外接口3.3.1 clear()3.3.2 containsKey()3.3.3 containsValue()3.3.4 ent...
2018-07-19 09:02:41 483
原创 【Java】集合系列09(Map架构)
概要1、Map2、Map.Entry3、AbstractMap4、SortedMap5、NavigableMap6、Dictionary概要前面,我们已经系统的对List进行了学习。接下来,我们先学习Map,然后再学习Set;因为Set的实现类都是基于Map来实现的(如,HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的)。首...
2018-07-18 18:19:27 378
原创 【Java】集合系列08(List总结LinkedList, ArrayList等使用场景和性能分析)
List内容包括:1、List概括2、List使用场景3、LinkedList和ArrayList性能差异分析4、Vector和ArrayList比较1、List概括先回顾一下List的框架图: (01)List 是一个接口,它继承于Collection的接口。它代表着有序的队列。 (02)AbstractList 是一个抽象类,它继承于AbstractC...
2018-07-18 13:03:12 284
原创 【Java】集合系列07(Stack详细介绍源码解析和使用示例)
1、Stack介绍Stack简介 Stack是栈。它的特性是:先进后出(FILO, First In Last Out)。java工具包中的Stack是继承于Vector(矢量队列)的,由于Vector是通过数组实现的,这就意味着,Stack也是通过数组实现的,而非链表。当然,我们也可以将LinkedList当作栈来使用!前面已经详细介绍过Vector的数据结构,这里就不再对Stack的...
2018-07-18 12:44:48 265
原创 【Java】集合系列06(Vector详细介绍源码解析和使用示例)
1、Vector介绍Vector简介 (1)Vector 是矢量队列,它是JDK1.0版本添加的类。继承AbstractList,实现了List, RandomAccess, Cloneable接口。 (2)Vector 继承了AbstractList,实现了List;所以,它是一个队列,支持相关的添加、删除、修改、遍历等功能。 (3)Vector实现了RandmoAccess接口,即提...
2018-07-18 11:18:07 271
原创 【Java】集合系列05(LinkedList详细介绍源码解析和使用示例)
概要1、LinkedList介绍2、LinkedList数据结构3、LinkedList源码解析(JDK1.8)4、LinkedList遍历方式5、LinkedList示例概要前面,我们已经学习了ArrayList,并了解了fail-fast机制。接着学习List的实现类——LinkedList。 和学习ArrayList一样,接下来呢,我们先对LinkedLi...
2018-07-17 15:44:29 415
原创 【Java】集合系列04(通过ArrayList来说明fail-fast的原理、解决办法)
以ArrayList为例,对Iterator的fail-fast机制进行了解。内容包括:1.fail-fast简介fail-fast机制是Java集合(Collection)的一种错误机制。 当多个线程对同一个集合进行操作时,就可能会产生fail-fast事件。 eg:当某一个线程A通过iterator去遍历某个集合的过程中,若该集合的内容被其他线程改变了;那么线程A访问集合时就会抛出...
2018-07-17 15:15:47 239
原创 【Java】 集合系列03(ArrayList详细介绍[源码解析]和使用示例)
本章我们讲解ArrayList。先对ArrayList有个整体认识,再学习它的源码,最后再通过例子来学习如何使用它。内容包括:一、ArrayList简介1.ArrayList 介绍ArrayList 是一个数组队列,相当于动态数组。与Java中的数组相比,它的容量能动态增长。ArrayList 继承了AbstractList,实现了List。它是一个数组队列,提供了相关的添...
2018-07-17 11:12:51 391
原创 【Java】 集合系列02( Collection)
一、概要Collection的框架类的关系图如下: Collection是一个接口,主要有两个分支:List 和 Set List和Set也都是接口,继承于Collection。 List是有序的队列,List中可以有重复的元素。 Set是集合,Set中没有重复的元素。1.Collection接口简介Collection的定义如下:public interfac...
2018-07-11 14:03:01 308
原创 【Java】 集合系列01(总体框架)
Java集合是Java提供的工具包,包含了常用的数据结构:集合、链表、队列、栈、数组、映射等。 Java集合工具包的位置是Java.util.*。 Java集合主要可以划分为四个部分:List列表、Set集合、Map映射、工具类(Iterator迭代器、Enumeration枚举类、Arrays和Collects)。 Java集合工具包框架图(如下:) 大致说明:看上面的框架图...
2018-07-06 09:10:21 413
架构师之路四阶段学习
2018-03-14
指纹锁设计源程序
2018-03-14
ARM学习资料
2018-03-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人