Skip to content

Commit 579f71e

Browse files
committed
fix: 图片链接
1 parent 5f34536 commit 579f71e

29 files changed

+10314
-10797
lines changed

docs/B树和B+树详解.md

Lines changed: 26 additions & 26 deletions
Large diffs are not rendered by default.

docs/Java并发包/AQS源码详解.md

Lines changed: 546 additions & 546 deletions
Large diffs are not rendered by default.

docs/Java并发包/ThreadLocal源码解析.md

Lines changed: 631 additions & 631 deletions
Large diffs are not rendered by default.

docs/Java并发包/Thread源码解析.md

Lines changed: 2155 additions & 2155 deletions
Large diffs are not rendered by default.

docs/Java集合包/HashMap详解(1.7和1.8).md

Lines changed: 1116 additions & 1116 deletions
Large diffs are not rendered by default.

docs/Java集合包/HashSet源码解析.md

Lines changed: 271 additions & 271 deletions
Large diffs are not rendered by default.

docs/Java集合包/LinkedHashMap源码分析.md

Lines changed: 573 additions & 573 deletions
Large diffs are not rendered by default.

docs/Java集合包/LinkedHashSet源码分析.md

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@
55
LinkedHashSet是一个能记录插入顺序的hashset,继承自HashSet,主要调用HashSet下面这个构造方法。
66

77
```java
8-
HashSet(int initialCapacity, float loadFactor, boolean dummy) {
9-
map = new LinkedHashMap<>(initialCapacity, loadFactor);
10-
}
8+
HashSet(int initialCapacity, float loadFactor, boolean dummy) {
9+
map = new LinkedHashMap<>(initialCapacity, loadFactor);
10+
}
1111
```
1212

1313
LinkedHashSet使用LinkedHashMap实现的,LinkedHashMap又继承自HashMap,如果你看过我写的[LinkedHashMap源码分析](https://wardseptember.gitee.io/mynotes/#/docs/Java%E9%9B%86%E5%90%88%E5%8C%85/LinkedHashMap%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90)[HashSet源码分析](https://wardseptember.gitee.io/mynotes/#/docs/Java%E9%9B%86%E5%90%88%E5%8C%85/HashSet%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90),理解LinkedHashSet就非常容易了。
1414

15-
<div align="center"> <img src="../../imgs/20201206181926.png" width="600"/> </div><br>
15+
<div align="center"> <img src="https://raw.githubusercontent.com/wardseptember/notes/master/imgs/20201206181926.png" width="600"/> </div><br>
1616

1717
LinkedHashSet是基于双向链表和HashMap实现的,HashMap的key就是LinkedHashSet就是不重复的集合,HashMap的Value指向同一个Object实例。
1818

@@ -22,42 +22,42 @@ LinkedHashSet是基于双向链表和HashMap实现的,HashMap的key就是Linke
2222

2323
```java
2424
public class LinkedHashSet<E>
25-
extends HashSet<E>
26-
implements Set<E>, Cloneable, java.io.Serializable {
25+
extends HashSet<E>
26+
implements Set<E>, Cloneable, java.io.Serializable {
2727

28-
private static final long serialVersionUID = -2851667679971038690L;
28+
private static final long serialVersionUID = -2851667679971038690L;
2929

30-
public LinkedHashSet(int initialCapacity, float loadFactor) {
31-
super(initialCapacity, loadFactor, true);
32-
}
30+
public LinkedHashSet(int initialCapacity, float loadFactor) {
31+
super(initialCapacity, loadFactor, true);
32+
}
3333

34-
public LinkedHashSet(int initialCapacity) {
35-
super(initialCapacity, .75f, true);
36-
}
34+
public LinkedHashSet(int initialCapacity) {
35+
super(initialCapacity, .75f, true);
36+
}
3737

38-
public LinkedHashSet() {
39-
super(16, .75f, true);
40-
}
38+
public LinkedHashSet() {
39+
super(16, .75f, true);
40+
}
4141

42-
public LinkedHashSet(Collection<? extends E> c) {
43-
super(Math.max(2*c.size(), 11), .75f, true);
44-
addAll(c);
45-
}
42+
public LinkedHashSet(Collection<? extends E> c) {
43+
super(Math.max(2*c.size(), 11), .75f, true);
44+
addAll(c);
45+
}
4646

4747

48-
@Override
49-
public Spliterator<E> spliterator() {
50-
return Spliterators.spliterator(this, Spliterator.DISTINCT | Spliterator.ORDERED);
51-
}
48+
@Override
49+
public Spliterator<E> spliterator() {
50+
return Spliterators.spliterator(this, Spliterator.DISTINCT | Spliterator.ORDERED);
51+
}
5252
}
5353
```
5454

5555
LinkedHashSet的构造方法都调用了HashSet同一个构造方法,
5656

5757
```java
58-
HashSet(int initialCapacity, float loadFactor, boolean dummy) {
59-
map = new LinkedHashMap<>(initialCapacity, loadFactor);
60-
}
58+
HashSet(int initialCapacity, float loadFactor, boolean dummy) {
59+
map = new LinkedHashMap<>(initialCapacity, loadFactor);
60+
}
6161
```
6262

6363
LinkedHashSet是基于LinkedHashMap实现的,就是调用HashMap,看一下他的add方法吧
@@ -67,9 +67,9 @@ LinkedHashSet是基于LinkedHashMap实现的,就是调用HashMap,看一下
6767
他的add方法就是hashset的add方法
6868

6969
```java
70-
public boolean add(E e) {
71-
return map.put(e, PRESENT)==null;
72-
}
70+
public boolean add(E e) {
71+
return map.put(e, PRESENT)==null;
72+
}
7373
```
7474

75-
LinkedHashMap没有覆写put方法,所以还是调用HashMap的put方法,HashMap的put方法又调用了putVal方法,putVal新增结点调用了newNode方法,LinkedHashMap覆写了newNode方法,在newNode方法中实现了链表功能。
75+
LinkedHashMap没有覆写put方法,所以还是调用HashMap的put方法,HashMap的put方法又调用了putVal方法,putVal新增结点调用了newNode方法,LinkedHashMap覆写了newNode方法,在newNode方法中实现了链表功能。

0 commit comments

Comments
 (0)