Skip to content

Commit 609ea79

Browse files
committed
完善目录
1 parent caaac50 commit 609ea79

25 files changed

+62
-28
lines changed

README.md

Lines changed: 38 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
将利用碎片时间进行整理和校对,完整的时间段适合做其他需要大量思考的事,如果你有兴趣欢迎提交PR。
88

99
## TODO
10-
- 目录完善
1110
- 数据校对
1211

1312
## 目录
@@ -78,9 +77,44 @@
7877
* [9.3 功能](ch09/03_Function.md#功能)
7978
* [9.4 策略](ch09/04_Strategy.md#策略)
8079
* [9.5 主题观察者](ch09/05_Subject-Observer.md#主题观察者)
81-
82-
83-
80+
* [第二部分:集合](ch10/00_Collections.md#集合)
81+
* [第十章(集合)](ch10/00_Collections.md#集合)
82+
* [10.1 Java集合框架的主要接口](ch10/01_The_Main_Interfaces_of_the_Java.md#Java集合框架的主要接口)
83+
* [第十一章(初步措施)](ch11/00_Preliminaries.md#初步措施)
84+
* [11.1 可迭代和迭代器](ch11/01_Iterable_and_Iterators.md)
85+
* [11.2 实现](ch11/02_Implementations.md)
86+
* [11.3 效率与Ο符号](ch11/03_Efficiency_and_the_O-Notation.md#效率与Ο符号)
87+
* [11.4 契约](ch11/04_contract.md#契约)
88+
* [11.5 集合和线程安全](ch11/05_Collections_and_Thread_Safety.md#集合和线程安全)
89+
* [第十二章(集合接口)](ch12/00_The_Collection_Interface.md#集合接口)
90+
* [12.1 使用集合方法](ch12/01_Using_the_Methods_of_Collection.md#使用集合方法)
91+
* [12.2 集合实现](ch12/02_Implementing_Collection.md#集合实现)
92+
* [12.3 集合构造函数](ch12/03_Collection_Constructors.md#集合构造函数)
93+
* [第十三章(Sets)](ch13/00_Sets.md#Sets)
94+
* [13.1 实现Set](ch13/01_Implementing_Set.md#实现Set)
95+
* [13.2 SortedSet和NavigableSet](ch13/02_SortedSet_and_NavigableSet.md#SortedSet和NavigableSet)
96+
* [第十四章(Queues)](ch14/00_Queues.md#Queues)
97+
* [14.1 使用队列方法](ch14/01_Using_the_Methods_of_Queue.md#使用队列方法)
98+
* [14.2 队列的实现](ch14/02_Implementing_Queue.md#队列的实现)
99+
* [14.3 BlockingQueue](ch14/03_BlockingQueue.md#BlockingQueue)
100+
* [14.4 Deque](ch14/04_Deque.md#Deque)
101+
* [14.5 比较队列实现](ch14/05_Comparing_Queue_Implementations.md#比较队列实现)
102+
* [第十五章(Lists)](ch15/00_Lists.md#Lists)
103+
* [15.1 使用List的方法](ch15/01_Using_the_Methods_of_List.md#使用List的方法)
104+
* [15.2 实现List](ch15/02_Implementing_List.md#实现List)
105+
* [15.3 比较List实现](ch15/03_Comparing_List_Implementations.md#比较List实现)
106+
* [第十六章(Maps)](ch16/00_Maps.md#Maps)
107+
* [16.1 使用Map的方法](ch16/01_Using_the_Methods_of_Map.md#使用Map的方法)
108+
* [16.2 实现Map](ch16/02_Implementing_Map.md#实现Map)
109+
* [16.3 SortedMap和NavigableMap](ch16/03_SortedMap_and_NavigableMap.md#SortedMap和NavigableMap)
110+
* [16.4 ConcurrentMap](ch16/04_ConcurrentMap.md#ConcurrentMap)
111+
* [16.5 ConcurrentNavigableMap](ch16/05_ConcurrentNavigableMap.md#ConcurrentNavigableMap)
112+
* [16.6 比较Map的实现](ch16/06_Comparing_Map_Implementations.md#比较Map的实现)
113+
* [第十七章(集合类)](ch17/00_The_Collections_Class.md#集合类)
114+
* [17.1 通用算法](ch17/01_Generic_Algorithms.md#通用算法)
115+
* [17.2 收集工厂](ch17/02_Collection_Factories.md#收集工厂)
116+
* [17.3 包装](ch17/03_Wrappers.md#包装)
117+
* [17.4 其他方法](ch17/04_Other_Methods.md#其他方法)
84118

85119

86120
## PR

ch10/01_The_Main_Interfaces_of_the_Java.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
《《《 [返回首页](../README.md) <br/>
22
《《《 [上一节](00_Collections.md)
33

4-
## Java集合框架的主要接口
4+
### Java集合框架的主要接口
55

66
`10-1` 显示了 `Java` 集合框架的主要接口,以及另外一个 `Iterable`--它不在框架中,但是它是一个重要的附件。其目的如下:
77

ch11/01_Iterable_and_Iterators.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
《《《 [返回首页](../README.md) <br/>
22
《《《 [上一节](00_Preliminaries.md)
33

4-
## 可迭代和迭代器
4+
### 可迭代和迭代器
55

66
迭代器是实现接口迭代器的对象
77

ch11/02_Implementations.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
《《《 [返回首页](../README.md) <br/>
22
《《《 [上一节](01_Iterable_and_Iterators.md)
33

4-
## 实现
4+
### 实现
55

66
我们简要地看了一下集合框架的接口,这些接口定义了我们可以预期的每个集合的行为。但正如我们在本章的介绍中提到的,有几种方法可以实现每个接口。为什么框架不会为每个接口使用最佳实现?那肯定会让生活变得更简单 - 事实上,过于简单就像生活一样。如果实施对某些行动来说是灰狗,墨菲定律告诉我们这对其他人来说将是一只乌龟。由于没有任何接口的“最佳”实现,所以您必须进行权衡,判断应用程序中哪些操作最常使用,并选择优化这些操作的实现。
77

ch11/03_Efficiency_and_the_O-Notation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
《《《 [返回首页](../README.md) <br/>
22
《《《 [上一节](02_Implementations.md)
33

4-
## 效率与Ο符号
4+
### 效率与Ο符号
55

66
在最后一节中,我们讨论了不同的实现对于不同的操作是“好的”。一个好的算法在使用两种资源时很经济:时间和空间。集合的实现通常使用与集合大小成正比的空间,但是访问和更新所需的时间可能会有很大差异,所以这将是我们的主要关心。很难说一个程序执行的速度有多快,因为这取决于很多因素,包括程序员省外的一些因素,比如编译代码的质量和硬件的速度。即使我们忽略了这些并且仅仅考虑算法的执行时间如何依赖于它的数据,详细的分析可能是复杂的。在 `Donald Knuth` 的经典着作“排序和搜索”(`Addison-Wesley`)中提供了一个相对简单的例子, `Knuth` 的名义 `MIX` 机器上的多列表插入排序程序的最坏情况执行时间推导为
77

ch11/04_contract.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
《《《 [返回首页](../README.md) <br/>
22
《《《 [上一节](03_Efficiency_and_the_O-Notation.md)
33

4-
## 契约
4+
### 契约
55

66
在阅读软件设计时,你很可能会遇到合同一词,通常没有任何附带的解释。事实上,软件工程给这个术语的含义非常接近人们通常理解合同的含义。在日常使用中,合同定
77
义了双方可以期望的彼此之间 - 在某些交易中彼此承担的义务。如果合同规定了供应商向客户提供的服务,供应商的义务是显而易见的。但客户也可能有义务 - 除了支付

ch11/05_Collections_and_Thread_Safety.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
《《《 [返回首页](../README.md) <br/>
22
《《《 [上一节](04_contract.md)
33

4-
## 集合和线程安全
4+
### 集合和线程安全
55

66
当一个 `Java` 程序正在运行时,它正在执行一个或多个执行流或线程。 线程就像一个轻量级进程,所以同时执行多个线程的程序可以被认为是同时运行多个程序的计算
77
机,但是有一个重要区别:不同的线程可以同时访问相同的内存位置和其他系统资源。 在具有多个处理器的机器上,可以通过为每个线程分配处理器来实现真正的并发线

ch12/00_The_Collection_Interface.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
《《《 [返回首页](../README.md) <br/>
22
《《《 [上一节](../ch11/05_Collections_and_Thread_Safety.md)
33

4-
### 集合接口
4+
## 集合接口
55

66
接口集合(参见图 `12-1`)定义了我们期望的除地图以外的任何集合的核心功能。 它提供了四组中的方法。
77

ch13/00_Sets.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
《《《 [返回首页](../README.md) <br/>
22
《《《 [上一节](../ch12/03_Collection_Constructors.md)
33

4-
### Sets
4+
## Sets
55

66
一个集合是不能包含重复项目的集合; 如果它已经存在于集合中,则添加它不起作用。`Set` 接口的方法与 `Collection` 的方法相同,但它是分开定义的,以允许以这种方式更改 `add`(和 `addAll`,这是用 `add` 定义的)合约。 回到上一章中的任务管理器示例,假设星期一您有空闲时间执行电话任务。 您可以通过将所有电话任务添加到星期一任务来进行相应的收集。 让 `mondayTasks``phone` 任务如例 `12-1` 中所声明的那样。 使用一个集合(再次选择一个方便常见的 `Set` 实现),你可以写:
77

ch14/03_BlockingQueue.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
《《《 [返回首页](../README.md) <br/>
22
《《《 [上一节](02_Implementing_Queue.md)
33

4-
## BlockingQueue
4+
### BlockingQueue
55

66
`Java 5` 为集合框架添加了许多类以供并发应用程序使用。其中大部分是 `Queue` 子接口 `BlockingQueue`(见图 `14-5`)的实现,主要用于生产者消费者队列。
77

0 commit comments

Comments
 (0)