Java 我想知道system.out.println()在这段代码中做了什么

Java 我想知道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;

我不知道为什么在这些代码的末尾有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; 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;i
println
打印新行(在它打印的内容末尾,但由于它实际上没有打印任何内容,所以它只是将新行放入输出流)
println
打印新行(在打印的最后,但由于它实际上没有打印任何内容,它只是将新行放入输出流中)P.s.您还应该查找
System.out.println
System.out.print
您自己。我100%确定有有用的解释