Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
programiz-zh
提交
9ef7e2b8
P
programiz-zh
项目概览
OpenDocCN
/
programiz-zh
9 个月 前同步成功
通知
0
Star
48
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
programiz-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
9ef7e2b8
编写于
7月 09, 2020
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
2020-07-09 09:58:40
上级
efd94986
变更
14
隐藏空白更改
内联
并排
Showing
14 changed file
with
38 addition
and
38 deletion
+38
-38
docs/java/109.md
docs/java/109.md
+1
-1
docs/java/112.md
docs/java/112.md
+1
-1
docs/java/114.md
docs/java/114.md
+1
-1
docs/java/116.md
docs/java/116.md
+1
-1
docs/java/118.md
docs/java/118.md
+2
-2
docs/java/120.md
docs/java/120.md
+1
-1
docs/java/121.md
docs/java/121.md
+4
-4
docs/java/144.md
docs/java/144.md
+1
-1
docs/java/72.md
docs/java/72.md
+3
-3
docs/java/73.md
docs/java/73.md
+14
-14
docs/java/74.md
docs/java/74.md
+4
-4
docs/java/76.md
docs/java/76.md
+3
-3
docs/java/77.md
docs/java/77.md
+1
-1
docs/java/85.md
docs/java/85.md
+1
-1
未找到文件。
docs/java/109.md
浏览文件 @
9ef7e2b8
...
...
@@ -164,7 +164,7 @@ printf("I am %d years old", 25);
Here,
*
`"I am %d years old"`
,是格式化字符串
*
`%d`
是格式化字符串中的整数
数据
*
`%d`
是格式化字符串中的整数
占位符
*
25 是一个参数
格式化的字符串包括文本和数据。 并且,参数替换了格式化字符串中的数据。
...
...
docs/java/112.md
浏览文件 @
9ef7e2b8
...
...
@@ -48,7 +48,7 @@ Writer output = new FileWriter();
*
`write(String data)`
- 将指定的字符串写入写入器
*
`append(char c)`
- 将指定字符插入当前写入器
*
`flush()`
- 强制将写入器中存在的所有数据写入相应的目的地
*
`close()`
- 关闭
作者
*
`close()`
- 关闭
写入器
* * *
...
...
docs/java/114.md
浏览文件 @
9ef7e2b8
...
...
@@ -170,6 +170,6 @@ The character encoding of output2: UTF8
| 方法 | 描述 |
| --- | --- |
|
`flush()`
| 强制将写入器中存在的所有数据写入相应的目的地 |
|
`append()`
| 将指定字符插入当前
作者
|
|
`append()`
| 将指定字符插入当前
写入器
|
要了解更多信息,请访问
[
Java `OutputStreamWriter`(Java 官方文档)
](
https://docs.oracle.com/javase/7/docs/api/java/io/OutputStreamWriter.html
"Java OutputStreamWriter (official Java documentation)"
)
。
\ No newline at end of file
docs/java/116.md
浏览文件 @
9ef7e2b8
...
...
@@ -166,6 +166,6 @@ The character encoding of output2: UTF8
| 方法 | 描述 |
| --- | --- |
|
`flush()`
| 强制将写入器中存在的所有数据写入相应的目的地 |
|
`append()`
| 将指定字符插入当前
作者
|
|
`append()`
| 将指定字符插入当前
写入器
|
要了解更多信息,请访问
[
Java `FileWriter`(Java 官方文档)
](
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/FileWriter.html
"Java FileWriter (official Java documentation)"
)
。
\ No newline at end of file
docs/java/118.md
浏览文件 @
9ef7e2b8
...
...
@@ -168,7 +168,7 @@ Data is flushed to the file.
| 方法 | 描述 |
| --- | --- |
|
`newLine()`
| 向
作者
插入新行 |
|
`append()`
| 将指定字符插入当前
作者
|
|
`newLine()`
| 向
写入器
插入新行 |
|
`append()`
| 将指定字符插入当前
写入器
|
要了解更多信息,请访问
[
Java `BufferedWriter`(Java 官方文档)
](
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/BufferedWriter.html
"Java BufferedWriter (official Java documentation)"
)
。
\ No newline at end of file
docs/java/120.md
浏览文件 @
9ef7e2b8
...
...
@@ -158,6 +158,6 @@ String: This is the original data
| 方法 | 描述 |
| --- | --- |
|
`flush()`
| 强制将写入器中存在的所有数据写入字符串缓冲区 |
|
`append()`
| 将指定字符插入当前
作者
|
|
`append()`
| 将指定字符插入当前
写入器
|
要了解更多信息,请访问
[
Java `StringWriter`(Java 官方文档)
](
https://docs.oracle.com/en/java/javase/13/docs/api/java.base/java/io/StringWriter.html
"Java StringWriter (official Java documentation)"
)
。
\ No newline at end of file
docs/java/121.md
浏览文件 @
9ef7e2b8
...
...
@@ -14,7 +14,7 @@
## `PrintWriter`的工作原理
与其他
作者
不同,
`PrintWriter`
将原始数据(
`int`
,
`float`
,
`char`
等)转换为文本格式。 然后,它将格式化的数据写入写入器。
与其他
写入器
不同,
`PrintWriter`
将原始数据(
`int`
,
`float`
,
`char`
等)转换为文本格式。 然后,它将格式化的数据写入写入器。
另外,
`PrintWriter`
类不会引发任何输入/输出异常。 相反,我们需要使用
`checkError()`
方法来查找其中的任何错误。
...
...
@@ -24,7 +24,7 @@
## 创建一个`PrintWriter`
为了创建打印
作者
,我们必须首先导入
`java.io.PrintWriter`
包。 导入包后,就可以创建打印
`Writer`
了。
为了创建打印
写入器
,我们必须首先导入
`java.io.PrintWriter`
包。 导入包后,就可以创建打印
`Writer`
了。
**1.使用其他写入器**
...
...
@@ -137,8 +137,8 @@ printf("I am %d years old", 25);
Here,
*
我
`%d`
岁
,是格式化字符串
*
`%d`
是格式化字符串中的整数
数据
*
`"I am %d years old"`
,是格式化字符串
*
`%d`
是格式化字符串中的整数
占位符
*
25 是一个参数
格式化的字符串包括文本和数据。 并且,参数替换了格式化字符串中的数据。
...
...
docs/java/144.md
浏览文件 @
9ef7e2b8
...
...
@@ -80,6 +80,6 @@ Then, to find the largest, the following conditions are checked using if else st
*
如果
`n1`
大于或等于
`n2`
,则
*
如果
`n1`
大于或等于
`n3`
,则
`n1`
最大。
*
否则,
`n3`
最大。
*
其他
,
*
否则
,
*
如果
`n2`
大于或等于
`n3`
,则
`n2`
最大。
*
否则,
`n3`
最大。
\ No newline at end of file
docs/java/72.md
浏览文件 @
9ef7e2b8
...
...
@@ -47,7 +47,7 @@ BlockingQueue<String> animal2 = new LinkedBlockingQueue<>();
*
`add()`
- 在队列的末尾将元素插入到阻塞队列。 如果队列已满,则引发异常。
*
`element()`
- 返回阻塞队列的开头。 如果队列为空,则引发异常。
*
`remove()`
- 从阻
止
队列中删除一个元素。 如果队列为空,则引发异常。
*
`remove()`
- 从阻
塞
队列中删除一个元素。 如果队列为空,则引发异常。
* * *
...
...
@@ -55,7 +55,7 @@ BlockingQueue<String> animal2 = new LinkedBlockingQueue<>();
*
`offer()`
- 将指定的元素插入到队列末尾的阻塞队列中。 如果队列已满,则返回
`false`
。
*
`peek()`
- 返回阻塞队列的开头。 如果队列为空,则返回
`null`
。
*
`poll()`
- 从阻
止
队列中删除一个元素。 如果队列为空,则返回
`null`
。
*
`poll()`
- 从阻
塞
队列中删除一个元素。 如果队列为空,则返回
`null`
。
**`offer()`和`poll()`**
...
...
@@ -80,7 +80,7 @@ offer(value, 100, milliseconds)
`BlockingQueue`
还提供了阻止操作并等待队列已满或为空的方法。
*
`put()`
- 将元素插入阻
止
队列。 如果队列已满,它将等待直到队列有空间插入元素。
*
`put()`
- 将元素插入阻
塞
队列。 如果队列已满,它将等待直到队列有空间插入元素。
*
`take()`
- 从阻塞队列中删除并返回一个元素。 如果队列为空,它将等待直到队列中有要删除的元素。
假设我们想将元素插入队列。 如果队列已满,则
`put()`
方法将等待,直到队列有空间插入元素。
...
...
docs/java/73.md
浏览文件 @
9ef7e2b8
...
...
@@ -14,9 +14,9 @@ Java 集合框架的`ArrayBlockingQueue`类使用数组提供阻塞队列实现
## 创建`ArrayBlockingQueue`
为了创建一个数组阻
止
队列,我们必须导入
`java.util.concurrent.ArrayBlockingQueue`
包。
为了创建一个数组阻
塞
队列,我们必须导入
`java.util.concurrent.ArrayBlockingQueue`
包。
导入包后,可以使用以下方法在 Java 中创建数组阻
止
队列:
导入包后,可以使用以下方法在 Java 中创建数组阻
塞
队列:
```
java
ArrayBlockingQueue
<
Type
>
animal
=
new
ArrayBlockingQueue
<>(
int
capacity
);
...
...
@@ -24,8 +24,8 @@ ArrayBlockingQueue<Type> animal = new ArrayBlockingQueue<>(int capacity);
这里,
*
`Type`
- 数组阻
止
队列的类型
*
`
容量
`
- 数组阻塞队列的大小
*
`Type`
- 数组阻
塞
队列的类型
*
`
capcity
`
- 数组阻塞队列的大小
例如,
...
...
@@ -45,7 +45,7 @@ ArrayBlockingQueue<Integer> age = new ArrayBlockingQueue<>(5);
`ArrayBlockingQueue`
类提供
`BlockingQueue`
接口中所有方法的实现。
这些方法用于从数组阻
止
队列中插入,访问和删除元素。
这些方法用于从数组阻
塞
队列中插入,访问和删除元素。
另外,我们还将学习两种支持数组阻塞队列中阻塞操作的方法
`put()`
和
`take()`
。
...
...
@@ -55,8 +55,8 @@ ArrayBlockingQueue<Integer> age = new ArrayBlockingQueue<>(5);
### 插入元素
*
`add()`
- 将指定的元素插入数组阻
止
队列。 如果队列已满,它将引发异常。
*
`offer()`
- 将指定的元素插入数组阻
止
队列。 如果队列已满,则返回
`false`
。
*
`add()`
- 将指定的元素插入数组阻
塞
队列。 如果队列已满,它将引发异常。
*
`offer()`
- 将指定的元素插入数组阻
塞
队列。 如果队列已满,则返回
`false`
。
例如:
...
...
@@ -88,8 +88,8 @@ ArrayBlockingQueue: [Dog, Cat, Horse]
### 访问元素
*
`peek()`
- 从数组阻
止
队列的前面返回一个元素。 如果队列为空,则返回
`null`
。
*
`iterator()`
- 返回一个迭代器对象,以顺序访问数组阻
止
队列中的元素。 如果队列为空,则抛出异常。 我们必须导入
`java.util.Iterator`
包才能使用它。
*
`peek()`
- 从数组阻
塞
队列的前面返回一个元素。 如果队列为空,则返回
`null`
。
*
`iterator()`
- 返回一个迭代器对象,以顺序访问数组阻
塞
队列中的元素。 如果队列为空,则抛出异常。 我们必须导入
`java.util.Iterator`
包才能使用它。
例如:
...
...
@@ -135,9 +135,9 @@ ArrayBlockingQueue Elements: Dog, Cat, Horse,
### 删除元素
*
`remove()`
- 返回并从数组阻
止
队列中删除指定的元素。 如果队列为空,则抛出异常。
*
`poll()`
- 返回并从数组阻
止
队列中删除指定的元素。 如果队列为空,则返回
`null`
。
*
`clear()`
- 从数组阻
止
队列中删除所有元素。
*
`remove()`
- 返回并从数组阻
塞
队列中删除指定的元素。 如果队列为空,则抛出异常。
*
`poll()`
- 返回并从数组阻
塞
队列中删除指定的元素。 如果队列为空,则返回
`null`
。
*
`clear()`
- 从数组阻
塞
队列中删除所有元素。
例如:
...
...
@@ -272,10 +272,10 @@ Removed Element: Dog
| 方法 | 内容描述 |
| --- | --- |
|
`contains(element)`
| 在数组阻
止
队列中搜索指定的元素。 如果找到该元素,则返回
`true`
,否则返回
`false`
。 |
|
`contains(element)`
| 在数组阻
塞
队列中搜索指定的元素。 如果找到该元素,则返回
`true`
,否则返回
`false`
。 |
|
`size()`
| 返回数组阻塞队列的长度。 |
|
`toArray()`
| 将数组阻塞队列转换为数组并返回它。 |
|
`toString()`
| 将数组阻
止
队列转换为字符串 |
|
`toString()`
| 将数组阻
塞
队列转换为字符串 |
* * *
...
...
docs/java/74.md
浏览文件 @
9ef7e2b8
...
...
@@ -4,7 +4,7 @@
#### 在本教程中,我们将借助示例学习`LinkedBLockingQueue`类及其方法。
Java
`Collections`
框架的
`LinkedBlockingQueue`
类使用链接列表提供阻
止
队列实现。
Java
`Collections`
框架的
`LinkedBlockingQueue`
类使用链接列表提供阻
塞
队列实现。
它实现了
[
Java `BlockingQueue`接口
](
/java-programming/blockingqueue
"Java BlockingQueue Interface"
)
。
...
...
@@ -35,7 +35,7 @@ LinkedBlockingQueue<Type> animal = new LinkedBlockingQueue<>(int capacity);
这里,
*
`Type`
- 链接的阻塞队列的类型
*
`
容量
`
- 链接的阻塞队列的大小
*
`
capcity
`
- 链接的阻塞队列的大小
例如,
...
...
@@ -147,7 +147,7 @@ LinkedBlockingQueue Elements: Dog, Cat, Horse,
*
`remove()`
- 返回指定的元素并将其从链接的阻塞队列中移除。 如果队列为空,则抛出异常。
*
`poll()`
- 返回指定的元素并将其从链接的阻塞队列中移除。 如果队列为空,则返回
`null`
。
*
`clear()`
- 从链接的阻
止
队列中删除所有元素。
*
`clear()`
- 从链接的阻
塞
队列中删除所有元素。
例如:
...
...
@@ -284,7 +284,7 @@ New LinkedBlockingQueue: [Cat]
| 方法 | 内容描述 |
| --- | --- |
|
`contains(element)`
| 在链接的阻
止
队列中搜索指定的元素。 如果找到该元素,则返回
`true`
,否则返回
`false`
。 |
|
`contains(element)`
| 在链接的阻
塞
队列中搜索指定的元素。 如果找到该元素,则返回
`true`
,否则返回
`false`
。 |
|
`size()`
| 返回链接的阻塞队列的长度。 |
|
`toArray()`
| 将链接的阻塞队列转换为数组并返回该数组。 |
|
`toString()`
| 将链接的阻塞队列转换为字符串 |
...
...
docs/java/76.md
浏览文件 @
9ef7e2b8
...
...
@@ -26,9 +26,9 @@ Java 集合框架的`Map`接口提供了映射数据结构的功能。
**注意**
:
`Map`
接口维护 3 个不同的集合:
*
密钥
集
*
一组值
*
键/值关联(映射)
的集合
。
*
键
集
*
值集
*
键/值关联(映射)
集
。
因此,我们可以分别访问键,值和关联。
...
...
docs/java/77.md
浏览文件 @
9ef7e2b8
...
...
@@ -406,7 +406,7 @@ New HashMap: {Second=2, First=5}
在
`HashMap`
中,我们可以
*
通过其
**键**
进行迭代
*
遍历其
**键**
*
遍历其
**值**
*
遍历其
**键/值**
...
...
docs/java/85.md
浏览文件 @
9ef7e2b8
...
...
@@ -433,4 +433,4 @@ Here,
*
`ConcurrentHashMap`
类允许多个线程同时访问其条目。
*
默认情况下,并发哈希映射分为
**16 个段**
。 这就是为什么允许 16 个线程同时并发修改映射的原因。 但是,任何数量的线程一次都可以访问该映射。
*
如果指定的键已经存在,则
`putIfAbsent()`
方法将不会覆盖映射中的条目。
*
它提供自己的同步。
\ No newline at end of file
*
它自己提供同步。
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录