BackEnd/Java
Java 15. Text Block
hanseom
2024. 12. 7. 09:00
반응형
Text Block
Java 13 preview, Java 15 정식 기능으로 출시된 Text Block은 큰따옴표(") 3개를 사용해서 여러 줄에 걸친 문자열을 만들기 위한 새로운 Java 문법입니다.
public class Main {
public static void main(String[] args) {
String str1 = "A\nBC\nDEF";
String str2 = "A\n" +
"BC\n" +
"DEF";
// Text Block
String str3 = """
A
BC
DEF
""";
System.out.println(str3);
}
}
Text Block 특성
- 시작하는 """ 다음에는 문자가 들어올 수 없습니다. 그렇기 때문에 """ABC""" 처럼 한 줄로 문자열을 적을 수 없습니다.
- Text Block 안에서 큰따옴표 사용 시 \" 대시 "만 사용해도 됩니다. 작은 따옴표도 동일합니다.
- 각 라인의 문자열 끝에 공백을 만들면 사라져 버립니다. 공백을 사용하기 위해서는 다음과 같은 방법들이 있습니다.
// replace
String str1 = """
A$$
BC$
""".replace('$', ' ');
// fence
String str2 = """
A |
BC |
""".replace("|\n", "\n");
// octal escape sequence
String str3 = """
A\040\040
BC\040
""";
// escape 문자 \s
String str4 = """
A \s
BC\s
""";
- 한 줄로 된 긴 문자열을 Text Block으로 쓰고 싶은 경우, 다음과 같이 escape 문자 (\)를 사용하면 개행 문자가 사라집니다.
String str = """
A \
BC \
DEF
"""; // result: A BC DEF
- 들여쓰기와 탭을 동일하게 "한 칸"으로 간주합니다.
반응형