摘要:
java Exception#fillInStackTrace:将当前调用栈信息填入到原来异常对象,相当于更新最新的抛出点(catch异常后又抛出的点). try-finally某些情况下会吃掉抛出的异常. try { throw new RuntimeException(); } finally 阅读全文
posted @ 2020-12-21 22:55
zliawk
阅读(48)
评论(0)
推荐(0)
摘要:
java javadoc只能为public和protected成员进行文档注释,private和默认权限的注释则会被忽略掉,不过可以用-private进行标记,以便把private成员的注释耶包括在内. int x = Character.digit('c', 16):是把16进制的c转为10进制, 阅读全文
posted @ 2020-12-21 22:47
zliawk
阅读(62)
评论(0)
推荐(0)
摘要:
java java Test < 1.txt表示将1.txt中的内容作为其前面命令的输入. java Test > 1.txt表示将Test的结果输出到1.txt中. 双端队列,可以在头部和尾部添加或删除元素,但不支持在队列中间添加元素. coll1.retainAll(coll2):会从coll1 阅读全文
posted @ 2020-12-21 22:44
zliawk
阅读(48)
评论(0)
推荐(0)
摘要:
java String v = map.putIfAbsent("a", "1"):若map中不存在指定的key值(a),则使用指定的key(a)和指定的value(1)进行填充,但此时返回的数据是旧值,所以是null,即v=null,当你真正调用map.get("a")时才返回指定的value值, 阅读全文
posted @ 2020-12-21 22:38
zliawk
阅读(58)
评论(0)
推荐(0)
摘要:
java 在同一个catch语句中可以捕获多个不存在子类关系的异常 try{ // }catch(FileNotFoundException | UnknowHostException e){ // } java中原来有提供断言,学到了学到了. 泛型类、泛型方法 一个类型变量或通配符可以有多个限定. 阅读全文
posted @ 2020-12-21 22:32
zliawk
阅读(57)
评论(0)
推荐(0)
摘要:
java s.substring(a,b)的长度:b-a. String.join("/","a","b","c"):a/b/c. 字符串常量是共享的,而+或substring等操作产生的结果并不是共享的,所以会导致拼接后的结果随便相同,但引用的地址却不是同一个. Scanner in = new 阅读全文
posted @ 2020-12-21 22:31
zliawk
阅读(47)
评论(0)
推荐(0)
摘要:
java Arrays.deepToString(a):打印二维数组. Java8开始时间使用Date类,日期使用LocalDate类. 包内的类不能引用默认包中的类. 内部类可以是私有类(private),而常规类只可以具有包可见性(default)或公有可见性(public). 内部类不能有st 阅读全文
posted @ 2020-12-21 22:29
zliawk
阅读(53)
评论(0)
推荐(0)
摘要:
java jdk-8u191-windows-x64:Java SE 8的第191次更新. OpenJDK:Java SE的一个免费的开源实现,不包含浏览器集成或JavaFX(用于图形化界面). 从Java 7开始,数字字面量加下划线:1_000_000,Java编译器会去除这些下划线. Doubl 阅读全文
posted @ 2020-12-21 22:23
zliawk
阅读(49)
评论(0)
推荐(0)
摘要:
简单介绍 由于CopyOnWriteArrayList的注释并不是很多,所以在这里简单的说明下,它属于线程安全,底层是通过生成数组的新副本来实现的,也就是在修改列表元素/结构的情况会生成新副本。简单地说,它是ArrayList的一个变体!探索CopyOnWriteArrayList源代码是基于JDK 阅读全文
posted @ 2020-12-21 22:14
zliawk
阅读(135)
评论(0)
推荐(0)
摘要:
前言 EnumMap初次见面,请多多关照!对于该类的注释直接上总结: 专门用于枚举类型的键的Map实现。EnumMap内部的数据结构是数组,按枚举常量的声明顺序排列它的键,与其他Map实现类不同的是,它的迭代器并不会抛出快速失败错误! 该类的代码不到1000行,速速解决掉,探索EnumMap底层实现 阅读全文
posted @ 2020-12-21 22:09
zliawk
阅读(83)
评论(0)
推荐(0)
摘要:
前奏 Executor是家族中的老大,其下还有ExecutorService、Executors、ThreadPoolExecutor、ScheduledThreadPoolExecutor和ForkJoinPool,对于ForkJoinPool是在JDK1.7中新增的,其中可能还涉及到诸多理论,故 阅读全文
posted @ 2020-12-21 22:06
zliawk
阅读(77)
评论(0)
推荐(0)
摘要:
概念 ForkJoin框架将一个大问题分解成若干个相互独立且容易解决的小问题,为了让这些小问题能够并行执行,同时减少线程间对资源的竞争,将这些小问题分别放入到不同的队列中,并为每个队列创建一个线程来执行队列中的小问题,这个过程就叫做Fork,中文称作分支,当所有的小问题都解决完之后,需要将每个结果进 阅读全文
posted @ 2020-12-21 22:01
zliawk
阅读(182)
评论(0)
推荐(0)
摘要:
前言 探索HashMap底层实现是基于JDK1.8,看代码之前翻了一下别人写的博客我才知道JDK1.7版本的HashMap是由数组 + 链表的数据结构组成,而对于JDK1.8是由数组 + 链表 + 红黑树的数据结构组成,所以我又去了解了什么是二叉树、平衡二叉树、红黑树,为的就是能做个铺垫。既然是由数 阅读全文
posted @ 2020-12-21 21:58
zliawk
阅读(64)
评论(0)
推荐(0)
摘要:
前言 HashSet的底层实现依赖于HashMap,所以它的数据结构也是数组 + 链表 + 红黑树,而对于它的类注释也没什么好总结的,探索HashSet底层实现是基于JDK1.8。仔细一想,HashSet存在的意义是什么?有时候需要添加元素时,也就是只有单个对象,并没有所谓的键值对,或许还有些用处, 阅读全文
posted @ 2020-12-21 21:56
zliawk
阅读(306)
评论(0)
推荐(0)
摘要:
前言 探索Hashtable底层实现是基于JDK1.8,它的数据结构是数组 + 链表。在不考虑线程是否安全的前提下,它的很多细节处理都不如HashMap,何况如今的HashMap又加了红黑树,查询修改肯定比不上,因为红黑树的时间复杂度是O(logN),而链表的时间复杂度是O(N),新增与删除无法比较 阅读全文
posted @ 2020-12-21 21:53
zliawk
阅读(361)
评论(0)
推荐(1)
摘要:
前沿 我也是第一次认识IdentityHashMap,在工作中从未使用过它,所以对它的使用场景可能并不是很了解,本文也仅仅针对基于JDK1.8的源码进行探索。IdentityHashMap的数据结构应该是如图所示: 这个数据结构是我在看源码之前看了几篇别人写的文章所了解到的,个人喜欢在看源码对目标有 阅读全文
posted @ 2020-12-21 21:50
zliawk
阅读(91)
评论(0)
推荐(0)
摘要:
前言 探索LinkedBlockingQueue是基于JDK1.8,由注释可知是基于单链表的阻塞队列,至于其队列是否有界取决于其队列的容量大小,从严格意义上来说,它是有界队列,按照先进先出的顺序访问,新元素被插入到队列的尾部,从队列头部获取元素,提供在将新元素放入到饱满的队列中会导致阻塞,直到队列出 阅读全文
posted @ 2020-12-21 21:49
zliawk
阅读(67)
评论(0)
推荐(0)
摘要:
前言 印象中对LinkedHashMap的使用次数好像也不多,参考了几篇文章发现它依赖于HashMap而存在,也就是说它在HashMap的基础上又增加了某些特性,比如说有序。既然是基于HashMap,那么它内部的数据结构也应该有数组 + 链表 + 红黑树,而刚才说它又加上了自己的有序特性,那么应该还 阅读全文
posted @ 2020-12-21 21:45
zliawk
阅读(213)
评论(0)
推荐(0)
摘要:
前言 额... 底层实现了LinkedHashMap,它的数据结构是数组 + 链表 + 红黑树,内部通过一条链表来维护有序性,按照插入顺序进行排列。代码只有100行... 数据结构 public class LinkedHashSet<E> extends HashSet<E> implements 阅读全文
posted @ 2020-12-21 21:44
zliawk
阅读(352)
评论(0)
推荐(0)
摘要:
前言 老样子,还是先看注释!本来以为能收获点什么干货,结果注释与ArrayList的注释基本相同,有点尴尬...LinkedList的源码是基于JDK1.8。 开干 先上LinkedList类的注释,在深入到类中详细说明属性与方法。 阅读注释 它的意思是:通过索引来操作LinkedList的话,每次 阅读全文
posted @ 2020-12-21 21:35
zliawk
阅读(117)
评论(0)
推荐(0)
浙公网安备 33010602011771号