답변:
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
당신은 또한 사용할 수 있습니다 System.lineSeparator()
:
String x = "Hello," + System.lineSeparator() + "there";
System.getProperty("line.separator")
.
String x = "Hello, %n there";
. %n
가독성을 위해 주변에 공간을 추가했습니다 .
System.out.printf("I %n am %n a %n boy");
I
am
a
boy
그것은 사용하는 것이 좋습니다 %n
운영체제 독립적 인 개행 문자 대신으로\n
것보다 쉽습니다.System.lineSeparator()
사용하는 %n
이유는 각 OS에서 새 줄이 다른 문자 집합을 나타 내기 때문입니다.
Unix and modern Mac's : LF (\n)
Windows : CR LF (\r\n)
Older Macintosh Systems : CR (\r)
LF 는 줄 바꿈 의 약어 이고 CR 은 캐리지 리턴 의 약어입니다 . 이스케이프 문자는 괄호 안에 표시됩니다. 따라서 각 OS에서 새 줄은 시스템에 특정한 것을 나타냅니다. %n
OS에 구애받지 않고 이식 가능합니다. 그것은 의미 \n
유닉스 시스템 또는 \r\n
Windows 시스템과에 이렇게. 따라서 사용하지 말고 \n
대신 사용하십시오 %n
.
시험:
System.out.println("I\nam\na\nboy");
코드를 모든 시스템에서 이식 가능하게 만들려면 다음을 사용하십시오.
public static String newline = System.getProperty("line.separator");
Windows마다 "\ r \ n"을 사용하고 Classic Mac은 "\ r"을 사용하고 Mac과 Linux는 모두 "\ n"을 사용하므로 OS마다 다른 줄 바꿈 표기법이 사용되므로 중요합니다.
해설자-내가 틀렸다면 정정 해주세요.
코드를 구체적이지 않게하려면 각 단어마다 println을 사용해야합니다.
System.out.println("I");
System.out.println("am");
System.out.println("a");
System.out.println("boy");
Windows는 "\ r \ n"을 줄 바꿈으로 사용하고 유닉스 시스템은 "\ n"만 사용하기 때문에
println은 항상 올바른 것을 사용합니다
println()
의 끝 부분 (개시 아님)에 줄 바꿈 문자 를 추가 한다는 것을 기억하십시오 .
System.lineSeparator()
또는 System.getProperty("line.separator")
코드 시스템을 독립적으로 만드는 데 사용할 수 있습니다.
재미있는 프로그램으로 전체 프로그램 예제 :
새 빈 문서를 열고 다른 이름으로 저장 %yourJavaDirectory%/iAmABoy/iAmABoy.java
. "iAmABoy"는 클래스 이름입니다.
다음 코드를 붙여넣고 읽습니다. 초보자입니다. 모든 의견을 보내 주셔서 감사합니다.
//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!");
}
}
이제 터미널 / cmd에서 다음을 찾아서 %yourJavaDirectory%/iAmABoy
입력하십시오.
javac iAmABoy.java
java iAmABoy I am a boy
args I am a boy
를 무엇이든 바꿀 수 있습니다 !
args
직접 전달 nlSeparated()
하거나 nlSeparated()
스칼라 String
를 취하십시오 . 첫 번째 옵션이 더 좋습니다. 또한 println
대신 서명으로 서명하십시오 print
.
main
대체 for (String arg : args) { nlSeparated(arg); }
단지와 함께 nlSeparated(args);
. nlSeparated
이미의 목록을 수락합니다 String
. 자세한 설명은 여기를 참조하십시오. stackoverflow.com/a/12534579/2988730
<br>
html 페이지에 표시하기 위해 문자열에 태그를 사용할 수 있습니다