Java 我想知道system.out.println()在这段代码中做了什么
我不知道为什么在这些代码的末尾有system.out.println。这是什么?为什么在这里 这段代码是我朋友的代码,他让我理解这段代码,我不明白为什么在这段代码后面有system.out.printlnJava 我想知道system.out.println()在这段代码中做了什么,java,Java,我不知道为什么在这些代码的末尾有system.out.println。这是什么?为什么在这里 这段代码是我朋友的代码,他让我理解这段代码,我不明白为什么在这段代码后面有system.out.println public class Nestedlooplab2 { public static void main(String[] args) { for (byte i = 1; i <= 5; i++) { for (byte j = 1;
public class Nestedlooplab2 {
public static void main(String[] args) {
for (byte i = 1; i <= 5; i++) {
for (byte j = 1; j <= i; j++) {
System.out.print(".");
}
for (byte k=1; k<=(5-i);k++) {
System.out.print("*");
} System.out.println();}
}
}
Nestedlooplab2公共类{
公共静态void main(字符串[]args){
对于(字节i=1;i欢迎使用堆栈溢出
本身,System.out.println()
将只打印一个换行符,例如,\n
。如果要在此语句中添加一个参数,它将打印参数和换行符
通过写入行分隔符字符串终止当前行。行分隔符字符串由系统属性line.separator定义,不一定是单个换行符('\n')
您链接的代码将打印一定数量的
字符和一定数量的*
字符,而不带任何换行符。最后的System.out.println();
将打印换行符,循环将重新开始
输出:
.****
..***
...**
....*
.....
.****
..***
...**
....*
.....
欢迎来到堆栈溢出
本身,System.out.println()
将只打印一个换行符,例如,\n
。如果要在此语句中添加一个参数,它将打印参数和换行符
通过写入行分隔符字符串终止当前行。行分隔符字符串由系统属性line.separator定义,不一定是单个换行符('\n')
您链接的代码将打印一定数量的
字符和一定数量的*
字符,而不带任何换行符。最后的System.out.println();
将打印换行符,循环将重新开始
输出:
.****
..***
...**
....*
.....
.****
..***
...**
....*
.....
代码的输出是:
.****
..***
...**
....*
.....
如果没有System.out.println();
,输出将是:
.****..***...**....*.....
System.out.println();
为循环的每次交互在屏幕上打印一个新行字符。代码的输出是:
.****
..***
...**
....*
.....
如果没有System.out.println();
,输出将是:
.****..***...**....*.....
<> >代码>系统.out .PrimTrn();< /C> >为循环的每个交互将新的行字符打印到屏幕上。 < P>首先,让我们看看代码的输出:
.****
..***
...**
....*
.....
作为字符串,这与以下内容相同:
.****\n..***\n...**\n....*\n.....\n
默认情况下,在Java中使用System.out
写入标准输出字符流。写入此流时,可以使用多种方法,包括System.out.print
和System.out.println
。调用print
将输出您提供给它的确切字符串,而调用println
将输出您提供给它的字符串,后跟一个新行(用于您的系统)。如果调用system.out.println()
(println
,不带参数),您将输出您提供的字符串(“”
)以及将输出移到下一行。本质上,这意味着在代码中删除对System.out.println()
的调用将产生以下输出:
.****..***...**....*.....
此输出看起来与字符串完全相同。如您所见,当您只调用System.out.print
而不调用System.out.println
时,输出中没有换行符(\n
)
最后,让我们来看看你的代码,让它更容易阅读和理解。我使用java 11 +的特性来大规模简化重复字符串的操作:
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
System.out.println(".".repeat(i)+"*".repeat(5-i));
}
}
这相当于原始输出。但是,阅读和理解正在发生的事情要清晰得多。假设您无法访问这些功能,您可以执行以下操作:
for (int i = 1; i <= 5; i++) {
for(int rpts = 0; rpts < i; rpts++) {
System.out.print('.');
}
for(int rpts = i; rpts < 5; rpts++) {
System.out.print('*');
}
System.out.println();
}
<代码> >(int i=1;i首先,让我们看一下代码的输出:
.****
..***
...**
....*
.....
作为字符串,这与以下内容相同:
.****\n..***\n...**\n....*\n.....\n
默认情况下,在Java中使用System.out
写入标准输出字符流。写入此流时,可以使用多种方法,包括System.out.print
和System.out.println
。调用print
将输出您提供给它的确切字符串,而调用println
将输出您提供给它的字符串,后跟一个新行(用于您的系统)。如果调用system.out.println()
(println
,不带参数),您将输出您提供的字符串(“”
)以及将输出移到下一行。本质上,这意味着在代码中删除对System.out.println()
的调用将产生以下输出:
.****..***...**....*.....
此输出看起来与字符串完全相同。如您所见,当您只调用System.out.print
而不调用System.out.println
时,输出中没有换行符(\n
)
最后,让我们来看看你的代码,让它更容易阅读和理解。我使用java 11 +的特性来大规模简化重复字符串的操作:
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
System.out.println(".".repeat(i)+"*".repeat(5-i));
}
}
这相当于原始输出。但是,阅读和理解正在发生的事情要清晰得多。假设您无法访问这些功能,您可以执行以下操作:
for (int i = 1; i <= 5; i++) {
for(int rpts = 0; rpts < i; rpts++) {
System.out.print('.');
}
for(int rpts = i; rpts < 5; rpts++) {
System.out.print('*');
}
System.out.println();
}
for(int i=1;iprintln
打印新行(在它打印的内容末尾,但由于它实际上没有打印任何内容,所以它只是将新行放入输出流)println
打印新行(在打印的最后,但由于它实际上没有打印任何内容,它只是将新行放入输出流中)P.s.您还应该查找System.out.println
和System.out.print
您自己。我100%确定有有用的解释