2013-01-17 55 views
1

我已经做了一些关于System.out.print()System.out.println()的研究,我发现System.out.println()在打印行的末尾添加行尾。只有爪哇,用system.out.print行结束

System.out.println("Test"); 

输出:

Test 

但不打印该行的末尾。

System.out.print("Test"); 

仅输出:

Test 

但不结束线和留下一些地方用于其它文字或数字,等等等等

甲多个说明性的方式是:

Test_____________________________________________ (All "blank" spots) 

有没有一种办法,迫使线与System.out.print()结束字后直接?请问%的使用将消除“空白”点?

还是有办法的代码,将结束行我用了几个System.out.print()打印一句后的功能?

对于为例:

System.out.print("Test); 
System.out.print("Test); 

意志前哨纯:

Test Test 

System.out.println("Test Test")

+0

http://en.wikipedia.org/wiki/Newline – SLaks

+1

你的意思是像'\ N'呢? –

+0

是System.out.print'( “字\ n”);'上的窗口。 – Fallup

回答

10

您可以附加请注意,它是平台相关的,因此:

  • Windows(“\ r \ n”)
  • 的Unix/Linux/OSX( “\ n”)
  • 预OSX的Mac( “\ r”)

如果你想根据实际的系统上获得行分隔符,你可以只使用:

  • System.getProperty("line.separator");预Java 7的
  • System.lineSeparator();对Java 7

那么你绝对牛逼的分离追加到字符串中System.out.print,如:

  • System.out.print("Word\n");
+0

\ n是不是我在想什么,因为我在我的测试评估它。 line.separator真的是我想要的。 – metraon

3

你可以做System.out.print("Test\n")

0

可明确包含在您打印什么换行字符:

System.out.print("Test\n");

在使用print功能这将迫使换行符。

3

为了得到一个独立于操作系统的EOL字符,你可以尝试

System.getProperty("line.separator"); 

,然后追加,为您的字符串?

你为什么想这样做手工,虽然因为有一个功能,这样做对吗?

+2

他可以只用'System.lineSeparator();'在Java 7中 – Fallup

0

您可以强制进行手动换行,像这样:

System.out.print("Test\n");

您也可以将两者混合,当您需要打印然后结束像这样的行:

System.out.print("This is on "); 
System.out.print("the same line."); 
System.out.println(" and now we'll end the line"); 
System.out.println("This is on a different line."); 
2

System.out.println("Test");将打印行尾。当你没有在你的IDE中看到它时,这并不意味着它不在这里。尝试:

System.out.println("Test1"); 
System.out.println("Test2"); 
System.out.println("Test3"); 

这将产生:

Test1 
Test2 
Test3 

println(String)docu

打印String,然后终止该行。此方法的行为就像先调用打印(字符串),然后的println()

并从println()docu

由写入行分隔符字符串终止当前行。行分隔符字符串由系统属性line.separator定义,并且不一定是单个换行字符(“\ n”)。