本文介绍了十种不同的名称打印方法。
1.循环播放
1.1 For循环
JavaSample1.java
package com.mkyong.samples;
public class JavaSample1 {
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
System.out.println("Java ");
}
}
}
输出量
Java
Java
Java
Java
Java
Java
Java
Java
Java
Java
1.2 While循环
JavaSample2.java
package com.mkyong.samples;
public class JavaSample2 {
public static void main(String[] args) {
int i = 0;
while (i < 10) {
System.out.println("Java");
i++;
}
}
}
2.阅读和打印
本示例将从控制台读取输入并将其打印十次。
JavaSampleReadPrint.java
package com.mkyong.samples;
import java.util.Scanner;
public class JavaSampleReadPrint {
public static void main(String[] args) {
String name = "";
// read an input and print 10 times
try (Scanner in = new Scanner(System.in)) {
System.out.print("Your name: ");
name = in.nextLine();
}
for (int i = 0; i < 10; i++) {
System.out.println(name);
}
}
}
输出量
Your name: mkyong
mkyong
mkyong
mkyong
mkyong
mkyong
mkyong
mkyong
mkyong
mkyong
mkyong
3.递归
本示例将使用递归循环。
JavaSampleReadRecursion.java
package com.mkyong.samples;
public class JavaSampleReadRecursion {
public static void main(String[] args) {
print("mkyong", 10);
}
static void print(String name, int times) {
System.out.println(times + ":" + name);
if (times > 1) {
print(name, times - 1);
}
}
}
输出量
10:mkyong
9:mkyong
8:mkyong
7:mkyong
6:mkyong
5:mkyong
4:mkyong
3:mkyong
2:mkyong
1:mkyong
4.无循环,无递归
这个例子很有趣,它打印一个字符串1000次而不循环,只是简单的数学运算。
JavaNoLoop.java
package com.mkyong.samples;
public class JavaNoLoop {
public static void main(String[] args) {
String s1 = "Java\n";
String s3 = s1 + s1 + s1;
String s10 = s3 + s3 + s3 + s1;
String s30 = s10 + s10 + s10;
String s100 = s30 + s30 + s30 + s10;
String s300 = s100 + s100 + s100;
String s1000 = s300 + s300 + s300 + s100;
System.out.print(s1000);
}
}
5.字符+字符串和替换
JavaCharStrReplace.java
package com.mkyong.samples;
public class JavaCharStrReplace {
public static void main(String[] args) {
char[] chars = new char[10];
String str = new String(chars);
System.out.print(str.replace("\0", "Mkyong\n"));
}
}
6. Java 8字符串联接
6.1 Collections.nCopies
和String.join
JavaStringJoin.java
package com.mkyong.samples;
import java.util.Collections;
public class JavaStringJoinNCopies {
public static void main(String[] args) {
System.out.print(String.join("\n", Collections.nCopies(10, "Mkyong")));
}
}
6.2 Arrays.fill
和String.join
JavaStringJoinArray.java
package com.mkyong.samples;
import java.util.Arrays;
public class JavaStringJoinArray {
public static void main(String[] args) {
String[] str = new String[10];
Arrays.fill(str, "Mkyong");
System.out.println(String.join("\n", str));
}
}
7. Java 8 IntStream.range
JavaIntStream.java
package com.mkyong.samples;
import java.util.stream.IntStream;
public class JavaIntStream {
public static void main(String[] args) {
IntStream.range(0,10).forEach(x->System.out.println("Mkyong"));
}
}
8. Java 11重复
Java11Repeat.java
package com.mkyong.samples;
public class Java11Repeat {
public static void main(String[] args) {
String str = "Mkyong\n";
System.out.println(str.repeat(10));
}
}
参考文献
翻译自: https://mkyong.com/java/java-how-to-print-a-name-10-times/