반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 버츄오 할인
- 윈도우
- 아이폰 강제 재시동
- Java
- 원격데스크탑
- 11g
- 쿠팡 네스프레소 할인
- ZIP code does not match billing address
- 아이폰15 출시일
- Listener
- 3.1.3
- 해외직구 우편번호
- 아이폰
- 레드햇
- oracle
- Util
- win7
- 아이폰 강제 리부팅
- 카드 zip code
- 삼성카드 우편번호
- 네스프레소 버츄오 넥스트
- JSP
- 모델S
- billing zip code
- 원격데스크톱
- 10g
- 다운그레이드
- 삼성카드 해외직구
- 삼성카드 해외직구 우편번호
- 모델x
Archives
- Today
- Total
starland
[Programing] 프로그래밍 언어상의 여러줄 문자열 표현(Multiple line string literal in programming language) 본문
Progrming관련
[Programing] 프로그래밍 언어상의 여러줄 문자열 표현(Multiple line string literal in programming language)
starland 2009. 12. 8. 00:56반응형
잘정리된 글이 있어 퍼온다.
대부분의 언어들은 여러줄의 문자열 리터럴을 간단히 쓰기 위한 문법이 있다. 이게 뭐냐면 문자열 리터럴은 보통
"문자로 둘러 싸여서 한줄에 쓰게 된다.
위와 같이 말이다. 그런데 한 문자열이 한줄이 아니라 여러줄을 가지게 되면 어떻게 될까?
위와 같이 쓰면 된다. 그런데 이렇게 계속 쓰게 되면 2~3줄 정도는 괜찮지만 텍스트 분량이 많은 경우에는 상당히 보기 힘들게 된다. 프로그래밍 텍스트 에디터는 대부분 자동 줄바꿈을 사용하지 않기 때문에 더욱 그렇다.
그래서 대부분의 프로그래밍 언어는 스트링 리터럴에 여러줄을 쓸 수 있는 특별한 문법을 지원한다.
그래서 자바도 당연히 있을 것이라고 생각했고 내가 몰라서 못쓰는 것 뿐이라고 생각했다. 하지만 자바에는 그런게 없다. 자바에서 그런 문법이 추가된다면 어떻게 될지에 대해서 토론하는 글타래가 있다.
http://www.jroller.com/scolebourne/entry/java_7_multi_line_string
또한 다른 언어에서는 이 문법이 어떻게 구현되는 지 내가 아는 프로그래밍 언어에 대해서 대충 정리해 보았다.
C, C++
Python, Scala, Groovy
Perl
C#
Java
"This is string"
위와 같이 말이다. 그런데 한 문자열이 한줄이 아니라 여러줄을 가지게 되면 어떻게 될까?
"This is 1st line.\nThis is 2nd line"
위와 같이 쓰면 된다. 그런데 이렇게 계속 쓰게 되면 2~3줄 정도는 괜찮지만 텍스트 분량이 많은 경우에는 상당히 보기 힘들게 된다. 프로그래밍 텍스트 에디터는 대부분 자동 줄바꿈을 사용하지 않기 때문에 더욱 그렇다.
"Q: 애초에 이렇게 쓸 수는 없나요?
A: SQL에서는 된답니다."
그래서 대부분의 프로그래밍 언어는 스트링 리터럴에 여러줄을 쓸 수 있는 특별한 문법을 지원한다.
그래서 자바도 당연히 있을 것이라고 생각했고 내가 몰라서 못쓰는 것 뿐이라고 생각했다. 하지만 자바에는 그런게 없다. 자바에서 그런 문법이 추가된다면 어떻게 될지에 대해서 토론하는 글타래가 있다.
http://www.jroller.com/scolebourne/entry/java_7_multi_line_string
또한 다른 언어에서는 이 문법이 어떻게 구현되는 지 내가 아는 프로그래밍 언어에 대해서 대충 정리해 보았다.
C, C++
char* aString = "This is 1st line.\n"
"This is 2nd line.";
Python, Scala, Groovy
aString = """This is 1st line."문자만 사용되므로 개인적으로 가장 좋아하는 스타일이다.
This is 2nd line."""
Perl
$aString = <<END;이것을 heredoc 스타일이라고 하는데 다른 스크립트 언어에서도 많이 쓰인다.
This is 1st line.
This is 2nd line.
END
C#
string aString = @"This is 1st line.@하나만 추가하면 되므로 나쁘지 않다.
This is 2nd line.";
Java
String = "This is first line\n"아까 말했듯이 그런거 없다. 그냥 + 로 붙여라.
+ "This is second line";
반응형
'Progrming관련' 카테고리의 다른 글
[JSP] 변수값에 따라 행 배경색 바꾸기 (0) | 2010.04.23 |
---|---|
[Programing] Eclipse 자주쓰는 단축키 (0) | 2010.01.01 |
[Perl] /usr/bin/perl -w 과 /usr/bin/perl의 차이 (used only once:) (0) | 2009.12.07 |
[Perl] perl 프로그램 소스 가득한곳 (0) | 2009.12.07 |
[JAVA] class -> java 역컴파일러 (0) | 2009.11.23 |