在新行中打印,java

Upv*_*ote 40 java printing new-operator println

我有以下代码:

    System.out.println(" | 1  2  3  4  5  6  7  8  9");
    System.out.println("----------------------------");
    System.out.println("");
Run Code Online (Sandbox Code Playgroud)

我使用println创建一个新行.是否可以使用\n或\ r来做同样的事情?我试图将\n添加到第二个println语句并继续使用print方法打印但是\n不会创建新行.

有任何想法吗?

Jig*_*shi 73

    String newLine = System.getProperty("line.separator");//This will retrieve line separator dependent on OS.

    System.out.println("line 1" + newLine + "line2");
Run Code Online (Sandbox Code Playgroud)

  • 从Java 7开始,你有`System.lineSeparator()`http://docs.oracle.com/javase/7/docs/api/java/lang/System.html#lineSeparator%28%29 (24认同)

小智 21

System.out.println("hello"+"\n"+"world");
Run Code Online (Sandbox Code Playgroud)


vst*_*nov 10

你最好的镜头就是

String.format("%n")
Run Code Online (Sandbox Code Playgroud)

要么

System.out.printf("%n");
Run Code Online (Sandbox Code Playgroud)

它应该根据当前平台打印换行符,因此它非常适合控制台.

如果要打印到文件,则取决于.


bia*_*bit 8

它确实创造了一条新线.尝试:

System.out.println("---\n###");
Run Code Online (Sandbox Code Playgroud)

  • 对于`"第1行"+ newLine +"line2"`明确地使用StringBuilder会适得其反.编译器可以自己优化它. (2认同)

小智 7

您可以尝试添加\ r \n而不是仅添加\n.根据您的操作系统以及查看输出的方式,它可能很重要.


Sha*_*der 6

您应该使用内置行分隔符.优点是您不必担心代码运行的系统,它只会起作用.

自Java 1.7起

System.lineSeparator()
Run Code Online (Sandbox Code Playgroud)

Pre Java 1.7

System.getProperty("line.separator")
Run Code Online (Sandbox Code Playgroud)


小智 5

\n在Java中创建新行。请勿在之前或之后使用空格\n

示例:打印It creates\na new line输出

它创建
一个新行。