본문 바로가기
Back-end/JAVA & Spring

[Java] StringBuilder 사용법 및 사용하는 이유

by 꼬바리 2021. 5. 11.

StringBuilder 사용법 및 사용하는 이유

자바에서 문자열하면 자연스럽게 String이 떠오른다.

 

String은 소위 불변(immutable)객체라고 한다.

String str1 = "abc";, String str2 = "def"; 2개의 String객체가 있을 때, 만약 str1 + str2;와 같은 연산을 하게 되면 새로운 String을 생성한다.

 

즉, String객체와 String객체를 더하는(+)행위는 메모리 할당과 메모리 해제를 발생시키며 더하는 연산이 많아진다면 성능적으로 좋지 않다.

 

그래서 나온 것이 StringBuilder이다.

 

이름만 봐도 String 잘 만들게(?) 생겼다.

 

StringBuilder는 String과 문자열을 더할 때 새로운 객체를 생성하는 것이 아니라 기존의 데이터에 더하는 방식을 사용하기 때문에 속도도 빠르며 상대적으로 부하가 적다.

 

따라서 긴 문자열을 더하는 상황이 발생할 경우 StringBuilder를 적극적으로 사용하면 되겠다.

사용법

StringBuilder sb = new StringBuilder();
sb.append("ABC");
sb.append("DEF");
System.out.println(sb.toString());

StringBuilder에는 append()가 있는데, 이는 문자열을 더하는 역할을 한다.

 

만들어진 문자열을 출력하기 위해서는 StringBuilder의 인스턴스인 sb toString()을 부르자.

 

예제이므로 짧은 문자열을 더했지만, 빈번하게 긴 문자열들을 더해야 할 경우 효과적이다.

 

출처 : hardlearner.tistory.com/288

728x90
반응형

댓글