Java - 문자열을 연결하는 방법(concat, StringBuilder, format)

JS · 22 Oct 2020

Java에서 문자열을 서로 연결하여 합쳐진 문자열을 만드는 방법을 소개합니다.

'+' 연산자를 이용한 방법

+ 연산자를 이용하여 다음과 같이 문자열을 붙일 수 있습니다. 가장 기본적인 방법으로 쉽게 사용할 수 있습니다.

String str = "Hello" + ", world" + ", Java";
System.out.println(str);

Output:

Hello, world, Java

StringBuilder를 이용한 방법

StringBuilder를 이용하여 문자열을 붙일 수 있습니다.

아래 코드에서는 StringBuilder의 생성자에 인자 10을 전달하여, 초기값 크기가 10인 Bulider를 만듭니다. append()로 문자열을 먼저 추가하고, toString()을 호출하면 추가된 문자열이 합쳐져 하나의 문자열이 리턴됩니다.

StringBuilder sb = new StringBuilder(10);
sb.append("Hello");
sb.append(", world");
sb.append(", Java");

String str = sb.toString();
System.out.println(str);

Output:

Hello, world, Java

StringBuilder는 매우 효율적으로 문자열을 연결합니다. 위에서 소개한 + 연산자는 컴파일될 때 StringBuilder로 변환된다고 합니다. 그렇기 때문에 StringBuilder와 + 연산자 조합을 함께 쓰는 경우는 성능에 좋지 않다고 합니다.

String.concat()

아래와 같이 concat()를 연속적으로 사용하여 문자열을 연결할 수 있습니다.

String str = "Hello".concat(", world").concat(", Java");
System.out.println(str);

Output:

Hello, world, Java

String.format()

다음과 같이 format()을 사용하여 문자열을 연결할 수 있습니다. %s, %d와 같은 문법은 모두 잘 알고 계실 것 같습니다. format에 대응하는 인자들이 주입되어 하나의 문자열이 만들어집니다.

String hello = "Hello";
String world = "world";
String java  = "Java";

String str = String.format("%s, %s, %s", hello, world, java);
System.out.println(str);

Output:

Hello, world, Java
댓글을 보거나 쓰려면 이 버튼을 눌러주세요.
codechachaCopyright ©2019 codechacha