Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
howtodoinjava-zh
提交
f28fba38
H
howtodoinjava-zh
项目概览
OpenDocCN
/
howtodoinjava-zh
10 个月 前同步成功
通知
1
Star
82
Fork
8
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
howtodoinjava-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
f28fba38
编写于
6月 13, 2020
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
2020-06-13 15:12:29
上级
a5cf0f97
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
34 addition
and
33 deletion
+34
-33
docs/misc2/193.md
docs/misc2/193.md
+4
-4
docs/misc2/201.md
docs/misc2/201.md
+3
-3
docs/misc2/202.md
docs/misc2/202.md
+6
-5
docs/misc2/203.md
docs/misc2/203.md
+7
-7
docs/misc2/204.md
docs/misc2/204.md
+3
-3
docs/misc2/205.md
docs/misc2/205.md
+9
-9
docs/misc2/210.md
docs/misc2/210.md
+1
-1
docs/misc2/72.md
docs/misc2/72.md
+1
-1
未找到文件。
docs/misc2/193.md
浏览文件 @
f28fba38
...
...
@@ -4,7 +4,7 @@
[
**回文**
](
https://en.wikipedia.org/wiki/Palindrome
"Palindrome"
)
是一个单词,词组,数字或其他单元序列,可以在任一方向上以相同的方式读取,通常是否使用逗号,分隔符或其他单词分隔符
*不是必需的*
。
类似地,回文数是指如果所有数字都颠倒了就代表相同数字的那些数字(下划线可以忽略较大的数字,例如
`1_00_00_001`
)。 数字文字中的下划线是
[
**Java
7 功能**
](
//howtodoinjava.com/java-7/improved-formatted-numbers-in-java-7/
"formatted-numbers-in-java-7"
)
中的新增内容。
类似地,回文数是指如果所有数字都颠倒了就代表相同数字的那些数字(下划线可以忽略较大的数字,例如
`1_00_00_001`
)。 数字文字中的下划线是
[
**Java7 功能**
](
//howtodoinjava.com/java-7/improved-formatted-numbers-in-java-7/
"formatted-numbers-in-java-7"
)
中的新增内容。
## 1\. Java 回文字符串示例
...
...
@@ -12,7 +12,7 @@
#### 1.1 使用 Apache Commons `StringUtils`检查字符串回文
**Java 中用于字符串**
的简单回文程序。 它也是 Java 中使用
**反
向
方法**
的回文程序。
**Java 中用于字符串**
的简单回文程序。 它也是 Java 中使用
**反
转
方法**
的回文程序。
```
java
public
class
Main
...
...
@@ -56,9 +56,9 @@ public class Main
#### 1.3 用`for`循环检查字符串回文
使用
[
`for`循环
](
https://howtodoinjava.com/java/basics/for-loop-in-java/
)
和
[
`charAt()`
](
https://howtodoinjava.com/java/string/string-charat-method-example/
)
方法遍历最后一个索引的字符串字符来获取
**反
向
字符串**
,并创建新字符串。
使用
[
`for`循环
](
https://howtodoinjava.com/java/basics/for-loop-in-java/
)
和
[
`charAt()`
](
https://howtodoinjava.com/java/string/string-charat-method-example/
)
方法遍历最后一个索引的字符串字符来获取
**反
转
字符串**
,并创建新字符串。
仅当您在 Java 中检查
**字符串回文而不使用反
向
方法**
时,才使用此方法。
仅当您在 Java 中检查
**字符串回文而不使用反
转
方法**
时,才使用此方法。
```
java
public
class
Main
...
...
docs/misc2/201.md
浏览文件 @
f28fba38
...
...
@@ -2,7 +2,7 @@
> 原文: [https://howtodoinjava.com/puzzles/puzzle-check-if-string-is-complete-contains-all-alphabets/](https://howtodoinjava.com/puzzles/puzzle-check-if-string-is-complete-contains-all-alphabets/)
如果字符串包含从 a 到 z 的所有字符,则认为该字符串是完整的。 给定一个字符串,检查它是否完
成
。 例如:
如果字符串包含从 a 到 z 的所有字符,则认为该字符串是完整的。 给定一个字符串,检查它是否完
整
。 例如:
**样本输入**
...
...
@@ -21,7 +21,7 @@ YES
NO
```
## 使用
for 循环和 indexOf()
的解决方案
## 使用
`for`循环和`indexOf()`
的解决方案
我写了一个快速的功能,可以找到这个完整的字符串。
...
...
@@ -105,7 +105,7 @@ public class CheckAllAlphabetsAlgorithms
}
```
**
Output:
**
**
输出:
**
```
java
TRUE
...
...
docs/misc2/202.md
浏览文件 @
f28fba38
# Java 中的反
向字符串 - 单词反向
字符串
# Java 中的反
转字符串 - 单词反转
字符串
> 原文: [https://howtodoinjava.com/puzzles/how-to-reverse-string-in-java/](https://howtodoinjava.com/puzzles/how-to-reverse-string-in-java/)
...
...
@@ -6,7 +6,7 @@
在
[
Java 面试
](
https://howtodoinjava.com/java-interview-questions/
)
中,这是初学者常见的题目。 让我们记住这些解决方案以便快速调用。
## 1\.
Java 程序反转字符串
## 1\.
反转字符串的 Java 程序
您可以使用
`StringBuilder.reverse()`
方法轻松地
*逐字符反转*
字符串。
...
...
@@ -26,7 +26,7 @@ Reverse String -> moc.avaJnIoDoTwoH
## Java 程序通过单词反转字符串
当
**通过单词**
反转字符串内容时,最自然的方法是使用
`StringTokenizer`
和
`Stack`
。 如您所知,
`Stack`
是一个实现易于使用的
**后进先出(LIFO)**
对象栈的类。
当
**通过单词**
反转字符串内容时,最自然的方法是使用
`StringTokenizer`
和
`Stack`
。 如您所知,
`Stack`
是一个实现易于使用的
后进先出(LIFO)
对象栈的类。
```
java
]
...
...
@@ -62,5 +62,6 @@ practices coding and concepts java smart for blog technology Java
参考:
[
StringBuilder.reverse()Java 文档
](
https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html#reverse--
)
[
StringTokenizer
](
https://docs.oracle.com/javase/8/docs/api/java/util/StringTokenizer.html
)
\ No newline at end of file
[
`StringBuilder.reverse()` Java 文档
](
https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html#reverse--
)
[
`StringTokenizer`
](
https://docs.oracle.com/javase/8/docs/api/java/util/StringTokenizer.html
)
\ No newline at end of file
docs/misc2/203.md
浏览文件 @
f28fba38
...
...
@@ -23,7 +23,7 @@ public static long factorialIterative ( long n )
## 2)使用递归计算阶乘
如果您使用的是 Java
7 或更低版本,那么这是您的最佳选择。 一个很好接受的答案。 它使用递归来计算阶乘。
如果您使用的是 Java7 或更低版本,那么这是您的最佳选择。 一个很好接受的答案。 它使用递归来计算阶乘。
```
java
public
static
long
factorialRecursive
(
long
n
)
...
...
@@ -33,7 +33,7 @@ public static long factorialRecursive( long n )
```
## 3)使用流计算阶乘
[Java8]
## 3)使用流计算阶乘
(Java8)
Java8 支持流,您可以使用流以最有效的方式计算阶乘,如下所示。
...
...
@@ -46,20 +46,20 @@ public static long factorialStreams( long n )
```
*
在这里,
[
`LongStream
`
](
https://docs.oracle.com/javase/8/docs/api/java/util/stream/LongStream.html
)
.rangeClosed(2, n)方法创建内容为
`[2, 3, ... , n]`
的 long
流。
*
在这里,
[
`LongStream
.rangeClosed(2, n)`
](
https://docs.oracle.com/javase/8/docs/api/java/util/stream/LongStream.html
)
方法创建内容为
`[2, 3, ... , n]`
的
`long`
流。
*
`reduce (a, b) -> a * b`
表示每对
`a`
和
`b`
– 将它们相乘并返回结果。 然后结果继续到下一轮。
*
在简化方法中使用的值“
1”在第一次迭代中用作变量
`a`
的起始值。
*
在简化方法中使用的值“1”在第一次迭代中用作变量
`a`
的起始值。
## 4)使用
BigInteger
计算大于 20 的数字的阶乘
## 4)使用
`BigInteger`
计算大于 20 的数字的阶乘
如果您为
数字> 20
运行以上示例中的任何一个; 由于
`long`
数据类型的限制,您将获得错误的输出。
如果您为
大于 20 的数字
运行以上示例中的任何一个; 由于
`long`
数据类型的限制,您将获得错误的输出。
```
java
System
.
out
.
println
(
getFactorial
(
20
));
// 2432902008176640000
System
.
out
.
println
(
getFactorial
(
21
));
// -4249290049419214848
```
值变得比
`long`
所能容纳的更大。
**
类`BigInteger`类分配所需的内存,以容纳需要保存的所有数据位。**
显然,如果系统中预设了那么多的内存,则只能
。
值变得比
`long`
所能容纳的更大。
**
`BigInteger`类分配所需的内存,以容纳需要保存的所有数据位。**
显然,如果系统中预设了那么多的内存,则只能这样
。
现在,您将需要
[
`BigInteger`
](
https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html
)
来保存更大的值,并使用以下代码获取阶乘。
...
...
docs/misc2/204.md
浏览文件 @
f28fba38
...
...
@@ -2,9 +2,9 @@
> 原文: [https://howtodoinjava.com/puzzles/fizzbuzz-solution-java/](https://howtodoinjava.com/puzzles/fizzbuzz-solution-java/)
**FizzBuzz**
是一款有趣的游戏,主要在小学阶段玩。 规则很简单:轮到您时,请说出下一个号码。 但是,如果该数字是 5 的倍数,则应改为说“
嘶嘶声”(最好带有法国口音)。 如果数字是 7 的倍数,则应说“嗡嗡声”。 而且,如果两者均是倍数,则应说“
fizzbuzz”。 如果您搞砸了,就出局了,比赛在没有您的情况下继续进行。
**FizzBuzz**
是一款有趣的游戏,主要在小学阶段玩。 规则很简单:轮到您时,请说出下一个号码。 但是,如果该数字是 5 的倍数,则应改为说“
fizz”(最好带有法国口音)。 如果数字是 7 的倍数,则应说“buzz”。 而且,如果两者均是倍数,则应说“
fizzbuzz”。 如果您搞砸了,就出局了,比赛在没有您的情况下继续进行。
请注意,可以使用不同的除数来代替 5 和 7,也可以使用不同的除数,并且不同的单词或手势可以代替“
嘶嘶声”或“嗡嗡声”。
[
[参考
](
https://en.wikipedia.org/wiki/Fizz_buzz
)
]
请注意,可以使用不同的除数来代替 5 和 7,也可以使用不同的除数,并且不同的单词或手势可以代替“
fizz”或“buzz”(
[
参考
](
https://en.wikipedia.org/wiki/Fizz_buzz
)
)。
让我们学习编写一个程序来用 Java 模拟这个游戏。
...
...
@@ -21,7 +21,7 @@ IntStream.rangeClosed(1, 100)
## 在 Java8 之前解决 FizzBuzz
如果您仍未使用 Java8,则此 Fizzbuzz 解决方案将使用基本的
for
循环并遍历数字范围并确定要打印的内容。
如果您仍未使用 Java8,则此 Fizzbuzz 解决方案将使用基本的
`for`
循环并遍历数字范围并确定要打印的内容。
```
java
for
(
int
i
=
1
;
i
<=
num
;
i
++)
...
...
docs/misc2/205.md
浏览文件 @
f28fba38
...
...
@@ -2,17 +2,17 @@
> 原文: [https://howtodoinjava.com/puzzles/find-missing-number-from-series/](https://howtodoinjava.com/puzzles/find-missing-number-from-series/)
在
[
Java 面试
](
https://howtodoinjava.com/java-interview-questions/
)
上,一个常见的题目是 – 从一系列数字或数组中找到缺失的数字。 这个题目已经在 Amazon
.com
中问过。
在
[
Java 面试
](
https://howtodoinjava.com/java-interview-questions/
)
上,一个常见的题目是 – 从一系列数字或数组中找到缺失的数字。 这个题目已经在 Amazon 中问过。
在这个 Java 题目中,您有一系列数字开头(例如
1….N
),而该系列中恰好缺少一个数字。 您必须编写一个
**Java 程序来查找**
系列中的缺失数字。
在这个 Java 题目中,您有一系列数字开头(例如
`1…N`
),而该系列中恰好缺少一个数字。 您必须编写一个
**Java 程序来查找**
系列中的缺失数字。
## 查找
电话号码
的解决方案
## 查找
数字
的解决方案
出乎意料的是,仅当您已经知道该题目的解决方案时,它才非常简单。
1.
计算
`A = n (n+1)/2`
,其中
n 是序列 1…N
中的最大数。
2.
计算
B =
给定序列中所有数字的总和
3.
缺少号码
= A – B
1.
计算
`A = n (n+1)/2`
,其中
`n`
是序列
`1…N`
中的最大数。
2.
计算
`B`
为
给定序列中所有数字的总和
3.
缺少号码
等于
`A – B`
让我们用代码编写解决方案。
...
...
@@ -45,9 +45,9 @@ Output:
```
## 查找
电话号码
的解决方案 – Java8
## 查找
数字
的解决方案 – Java8
上面的代码虽然很简单,但是可以使用新语言功能(例如
[
Java8
](
https://howtodoinjava.com/java-8-tutorial/
)
中的
[
lambda
](
https://howtodoinjava.com/java8/complete-lambda-expressions-tutorial-in-java/
)
)减少许多行。 让我们看看如何?
上面的代码虽然很简单,但是可以使用新语言功能(例如
[
Java8
](
https://howtodoinjava.com/java-8-tutorial/
)
中的
[
lambda
](
https://howtodoinjava.com/java8/complete-lambda-expressions-tutorial-in-java/
)
)减少许多行。 让我们看看如何?
```
java
import
java.util.Arrays
;
...
...
@@ -76,4 +76,4 @@ Output:
学习愉快!
参考:
[
SO 线程
](
https://stackoverflow.com/questions/2113795/quickest-way-to-find-missing-number-in-an-array-of-numbers
)
\ No newline at end of file
参考:
[
SO 帖子
](
https://stackoverflow.com/questions/2113795/quickest-way-to-find-missing-number-in-an-array-of-numbers
)
\ No newline at end of file
docs/misc2/210.md
浏览文件 @
f28fba38
...
...
@@ -324,7 +324,7 @@ System.out.println(blogName.equals(anotherString)); //true
## 14.我们可以在开关盒中使用 String 吗?
是的,自 Java
7 起,您可以在
`switch`
语句中使用
[
`String`类。在 Java
7 之前,这是不可能的,您必须使用`if-else`语句才能实现类似的行为。
](
https://howtodoinjava.com/java7/string-class-is-supported-in-switch-statement-in-java-7/
)
是的,自 Java
7 起,您可以在
`switch`
语句中使用
[
`String`类。在 Java
7 之前,这是不可能的,您必须使用`if-else`语句才能实现类似的行为。
](
https://howtodoinjava.com/java7/string-class-is-supported-in-switch-statement-in-java-7/
)
```
java
String
number
=
"1"
;
...
...
docs/misc2/72.md
浏览文件 @
f28fba38
...
...
@@ -54,7 +54,7 @@ Eclipse 预定义模板
## 1)IO 模板文件
以下模板对于读取或写入文件很有用。 他们使用 Java
7 功能(如
`try-with-resources`
)自动关闭文件。 他们还使用 NIO2.0 中的方法来获取缓冲的读取器并读取文件。
以下模板对于读取或写入文件很有用。 他们使用 Java7 功能(如
`try-with-resources`
)自动关闭文件。 他们还使用 NIO2.0 中的方法来获取缓冲的读取器并读取文件。
**a)从文件**
中读取文本
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录