019 여러 줄 문자열(텍스트 블록) 선언
이 책을 쓸 당시 JDK 12에는 JEP 326: 원시 문자열 리터럴(Raw String Literals)이라 알려진 여러 줄 문자열 추가 제안이 있었다. 하지만 마지막 순간에 제외됐다.
JDK 13에서 이 개념을 다시 검토함에 따라 제외됐던 원시 문자열 리터럴과 다르게 다음과 같이 텍스트 블록을 세 개의 큰따옴표로 감싸기 시작했다.
String text = """My high school,
the Illinois Mathematics and Science Academy,
showed me that anything is possibleand that you're never too young to think big.""";
TIP ≣ 여러 줄짜리 SQL 문을 작성하거나 다국어를 사용할 때 텍스트 블록이 매우 유용하다. 자세한 내용은 https://openjdk.java.net/jeps/355를 참고한다.
그렇지만 JDK 13 이전 버전에도 몇 가지 해법은 있다. 이러한 해법은 공통적으로 줄 구분자(line separator)를 사용한다.
private static final String LS = System.lineSeparator();
JDK 8부터는 다음과 같이 String.join()을 이용하면 된다.
String text = String.join(LS,
"My high school, ",
"the Illinois Mathematics and Science Academy,",
"showed me that anything is possible ",
"and that you're never too young to think big.");