룰루랑랑
[Java] String 문자열 처리 4 - 문자열 붙이기(concat, +, append) 본문
안녕하세요. 룰루랑랑입니다.
오늘은 자바 프로그래밍 텍스트와 텍스트를 붙이는 방법에 대해서 공부해보겠습니다.
먼저 자바 프로그래밍에서는 텍스트 간 붙이는 방법이 크게 3가지 방법이 있습니다.
1. concat() 메소드를 이용해서 텍스트 붙이기
2. + 연산자를 통해서 텍스트 붙이기
3. append()를 이용해서 텍스트 붙이기
위 3가지 방법 어떤 것으로 하셔도 무방하지만, 대부분 개발자들은 + 연산자를 통해서 텍스트를 붙이곤 합니다.
다만, 상황에 따라서 append() 메소드를 이용하기도 합니다.
그럼 한번 알아볼까요?
# 1. concat()을 이용한 텍스트 붙이기
먼저 기본 텍스트를 준비합니다.
저는 text1과 text2 라는 String 변수를 준비했습니다.
String text1 = "안녕하세요. ";
String text2 = "오늘은 2016년 12월 06일 입니다.";
이 두개의 텍스트를 하나의 텍스트(문자열)로 바꾸어 보도록 하죠.
위와 같이 concat()를 이용해서 텍스트를 붙입니다.
text1.concat(text2) 이렇게 명령하게 되면
String result 라는 변수에 합쳐진 텍스트가 출력되게 됩니다.
결과를 한번 볼까요?
저와 같이 인텔리제이를 쓰시는 분들은 상단 플레이 버튼을 누르시거나
Shift + F10을 눌르시면 빌드가 되어 실행됩니다.
위와 같이 결과가 나오시는 가요? ㅎㅎㅎ
# 2. + 연산자를 이용한 텍스트 붙이기
이번엔 + 연산자를 통해서 텍스트를 붙여보겠습니다.
+ 연산자는 우리가 알고 있다시피 더하기 표시 입니다.
숫자와 숫자를 더할 수 있도록 도와주는 + 연산자는 String을 합치는 방법으로
사용될 수 있습니다.
위와 같이 text1 + text2를 해서 String result에 담아보도록 하죠.
이번에도 동일하게 Shift + F10을 눌러 실행 해볼까요?
앞서 출력한 concat()을 이용한 방법과 동일한 결과를 출력하고 있습니다.
아마 저와 같은 프로그래밍 초보 분들은 + 연산자를 이용해서 텍스트를
합치는 방법이 쉽게 느껴지실 겁니다.
일반 개발자들도 특별한 경우가 아니면 + 연산자를 통해서 단순 텍스트 합치기를
하고 있습니다. ㅎㅎㅎ
# 3. StringBuffer와 append()를 이용한 텍스트 붙이기
이번엔 StringBuffer와 append()를 이용해서 텍스트를 붙여보겠습니다.
StringBuffer를 왜 쓰나요?
StringBuffer를 쓰는 이유는 String 변수의 불변성 때문에 그렇습니다.
한번 선언된 String 변수는 그 내용이 절대로 변하지 않습니다.
우리가 보기엔 String에다가 대입했을 뿐이지만
내부적으론 새로운 String 객체를 생성해 텍스트를 붙이도록 하고 있죠.
객체지향에 대해서 잘 모르신다면 그냥 넘어가셔도 무방합니다.
나중에 객체지향 부분을 공부하시면
new 객체 선언으로 인한 메모리 낭비가 얼마나 나쁜 것인지 알 수있기 때문에
지금 너무 머리 아프게 이해하시려고 노력 안하셔도 됩니다.
어쨋든, 이유는 String 임시 객체로 생성을 방지하고
메모리를 절약하기 위해 StringBuffer와 append()를 사용하는 것입니다.
어쨋든 위 내용을 실행 해볼까요? ㅎㅎㅎ
앞서 보여줬던 결과와 동일하게 내용이 출력된 것을 알 수 있습니다.
이렇게 해서 3가지의 텍스트 붙이기 방법에 대해서 알아보았습니다.
읽어보시면서 따라 코딩을 해보시는 것을 강력하게 추천드려요.
그 이유는 직접 코딩해서 출력 결과를 보면 더 프로그래밍에 이해가 빨라지기 때문입니다. ㅎㅎㅎ
해보시고 궁금하신 점이 있다면 답글 달아주세요.
신속하게 확인해서 답변 해드리겠습니다.
오늘도 긴글 읽어주셔서 감사합니다.
다음시간에 만나요 ^.^
'Java 레시피' 카테고리의 다른 글
[Java] String 문자열 처리 5 - 문자열을 숫자로 바꾸기(feat. valueOf(), parseInt()) (0) | 2016.12.06 |
---|---|
[Java] String 문자열 처리 3 - 공백 제거하기 Trim (0) | 2016.11.25 |
[Java] String 문자열 처리 2 - 문자열 비교하기 (0) | 2016.11.24 |
[Java] String 텍스트 처리 1 - 텍스트 자르기 (0) | 2016.11.23 |