Java에서 문자열 분할 및 결합하는 방법
Java에서 하나의 문자열을 여러 부분으로 나누려면 split() 메서드를 사용하고, 여러 문자열을 하나로 합치려면 join() 메서드를 사용합니다. 아래 예제를 통해 두 메서드의 실제 사용법을 살펴보겠습니다.
예제 코드
public class Demo{
public static void main(String args[]){
String my_str = "This_is_a_sample";
String[] split_str = my_str.split("_", 4);
System.out.println("The split string is:");
for (String every_Str : split_str)
System.out.println(every_Str);
String joined_str = String.join("_", "This", "is", "a", "sample");
System.out.println("The joined string is:");
System.out.println(joined_str);
}
}실행 결과
The split string is:
This
is
a
sample
The joined string is:
This_is_a_sample
코드 상세 설명
위 코드는 Demo라는 클래스 안에 main 함수를 정의한 것입니다. 먼저 my_str이라는 문자열 객체를 생성한 뒤, split("_", 4)를 호출하여 밑줄(_) 문자를 기준으로 최대 4개의 부분 문자열로 분할합니다. 두 번째 인자인 4는 분할 횟수의 한도(limit)를 의미하며, 이를 지정하지 않으면 구분자가 발견되는 모든 위치에서 문자열이 나뉩니다.
분할된 결과는 배열에 저장되고, for-each 루프를 통해 요소를 하나씩 순회하면서 콘솔에 출력됩니다. 이어서 String.join() 메서드를 사용하면 "This", "is", "a", "sample"이라는 네 개의 문자열을 밑줄(_) 구분자로 다시 결합하여 원래 형태인 "This_is_a_sample"을 얻을 수 있습니다. 각 처리 단계마다 안내 메시지가 함께 출력되어 결과를 쉽게 확인할 수 있습니다.
참고로 split()은 구분자를 정규식(regular expression)으로 처리한다는 점을 기억해 두면 좋습니다. 반면 String.join()은 Java 8부터 도입된 메서드로, 별도의 StringBuilder 없이도 간결하게 문자열을 연결할 수 있어 코드 가독성을 크게 높여 줍니다.