Java String新行

时间:2011-10-20 09:19:03

标签: java string newline

我有像

这样的字符串
"I am a boy".

我想这样打印

"I 
am 
a
boy".

有人能帮助我吗?

18 个答案:

答案 0 :(得分:130)

System.out.println("I\nam\na\nboy");

System.out.println("I am a boy".replaceAll("\\s+","\n"));

System.out.println("I am a boy".replaceAll("\\s+",System.getProperty("line.separator"))); // portable way

答案 1 :(得分:101)

您还可以使用System.lineSeparator()

String x = "Hello," + System.lineSeparator() + "there";

答案 2 :(得分:40)

实施例

System.out.printf("I %n am %n a %n boy");

输出

I 
 am 
 a 
 boy

解释

最好将%n用作独立于操作系统的换行符,而不是\n,这比使用System.lineSeparator()

更容易

为什么要使用%n,因为在每个操作系统上,新行指的是一组不同的字符;

Unix and modern Mac's   :   LF     (\n)
Windows                 :   CR LF  (\r\n)
Older Macintosh Systems :   CR     (\r)

LF 换行的首字母缩写, CR 回车的首字母缩写。转义字符写在括号内。因此,在每个操作系统上,新行代表系统特有的内容。 %n与操作系统无关,它是可移植的。它代表Unix系统上的\n或Windows系统上的\r\n,依此类推。因此,请勿使用\n,而是使用%n

答案 3 :(得分:24)

可以通过多种方式完成。我提到了两种简单的方法。

  1. 非常简单的方法如下:

    System.out.println("I\nam\na\nboy");
    
  2. 也可以通过连接完成,如下所示:

    System.out.println("I" + '\n' + "am" + '\n' + "a" + '\n' + "boy");
    

答案 4 :(得分:14)

尝试:

System.out.println("I\nam\na\nboy");

答案 5 :(得分:9)

为了使代码可移植到任何系统,我会使用:

public static String newline = System.getProperty("line.separator");

这很重要,因为不同的操作系统对换行使用不同的符号:Windows使用" \ r \ n",Classic Mac使用" \ r",Mac和Linux都使用&# 34; \ n"

评论员 - 如果我错了,请纠正我......

答案 6 :(得分:7)

\n用于制作单独的行;

示例:

System.out.print("I" +'\n'+ "am" +'\n'+ "boy"); 

<强>结果:

I
am
boy

答案 7 :(得分:6)

如果您只想在控制台中打印换行符,可以使用'\ n'作为换行符。

如果你想在swing组件中打破文本,你可以使用html:

String s = "<html>first line<br />second line</html>";

答案 8 :(得分:5)

如果您希望使用非特定的代码,则应为每个单词使用println

System.out.println("I");
System.out.println("am");
System.out.println("a");
System.out.println("boy");

因为Windows使用“\ r \ n”作为换行符,而unixoid系统只使用“\ n”

println总是使用正确的

答案 9 :(得分:3)

%n如何使用 String.format() 之类的格式化工具?:

String s = String.format("I%nam%na%nboy");

正如this answer所述,它可以从java 1.5获得,是System.getProperty("line.separator")System.lineSeparator()的另一种方式,就像这两个一样,独立于操作系统。< / p>

答案 10 :(得分:1)

去分手。

String string = "I am a boy";
for (String part : string.split(" ")) {
    System.out.println(part);
}

答案 11 :(得分:1)

完整的程序示例,有趣的转折:

打开一个新的空白文档并将其另存为%yourJavaDirectory%/iAmABoy/iAmABoy.java。 &#34; iAmABoy&#34;是班级名称。

粘贴以下代码并通读它。请记住,我是初学者,所以我感谢所有反馈!

//The class name should be the same as your Java-file and directory name.
class iAmABoy {

    //Create a variable number of String-type arguments, "strs"; this is a useful line of code worth memorizing.
    public static void nlSeparated(String... strs) {

        //Each argument is an str that is printed.
        for (String str : strs) {

            System.out.println(str);

        }

    }

    public static void main(String[] args) {

        //This loop uses 'args' .  'Args' can be accessed at runtime.  The method declaration (above) uses 'str', but the method instances (as seen below) can take variables of any name in the place of 'str'.
        for (String arg : args) {

            nlSeparated(arg);

        }

        //This is a signature.  ^^
        System.out.print("\nThanks, Wolfpack08!");
    } 

}

现在,在terminal / cmd中,浏览到%yourJavaDirectory%/iAmABoy并输入:

javac iAmABoy.java
java iAmABoy I am a boy

你可以用任何东西替换args I am a boy

答案 12 :(得分:0)

的System.out.println( “I \南\ NA \ nboy”);

这很有效 在输入字符

之前,它还会给出一个空格字符

答案 13 :(得分:0)

我使用此代码String result = args[0].replace("\\n", "\n");

public class HelloWorld {

    public static void main(String[] args) {
        String result = args[0].replace("\\n", "\n");
        System.out.println(result);
    }
}

在终端上,我可以使用arg I\\nam\\na\\boy来打印System.out.println

I
am
a
boy

enter image description here

答案 14 :(得分:0)

  

与平台无关的换行符

finalString = "bandham" + System.lineSeparator() + "manikanta"; System.out.println(finalString);

输出: bandham manikanta

  

注意:    Java 6: System.getProperty("line.separator") Java 7 & above: System.lineSeparator()

答案 15 :(得分:0)

在这里! NewLine被称为 CRLF (回车和换行)。

  • 对于Linux和Mac,我们可以使用“ \ n”。
  • 对于Windows,我们可以使用“ \ r \ n”。

示例:

System.out.println("I\r\nam\r\na\r\nboy");

结果:
enter image description here

对我有用。

答案 16 :(得分:-1)

您可以在字符串中使用<br>标记,以便在html网页中显示

答案 17 :(得分:-1)

这里我使用了拆分功能。我从空间刹车字符串。然后我使用了 println 函数并打印了值。

    public class HelloWorld{

     public static void main(String []args){
              String input = "I am a boy";
              String[] opuput = input.split(" ");
          for (int i = 0; i < opuput.length; i++)
                System.out.println(opuput[i]);
         }        
}