본문으로 바로가기

이번 시간에는 문자열 배열을 문자열로 변환하는 방법에 대해 알아보도록 하자.

 

💕 toString() 메소드

Arrays 클래스의 toString() 메소드를 사용한다.

 📌 예제

import java.util.Arrays;

class Solution {
  public static void main(String[] args) {
    String[] arr = {"안녕하세요!", "하마개발자입니다.", "만나서 반갑습니다."};
    String strArrayToString = Arrays.toString(arr);
    System.out.println(strArrayToString);
  }
}

📌 실행결과

[안녕하세요!, 하마개발자입니다., 만나서 반갑습니다.]

 

💕 StringBuilder.Append() 메소드

 StringBuilder 타입의 객체를 생성하고 StringBuilder 클래스의 Append() 메소드를 사용하여 문자열 배열 요소를 하나씩 추가한다.

문자열 배열의 모든 요소가 StringBuilder 객체에 추가되면 toString() 메소드를 사용하여 하나의 문자열로 만들 수 있다.

📌 예제

class Solution {
	public static void main(String[] args) {
    	String[] arr = {"안녕하세요!", "하마개발자입니다.", "만나서 반갑습니다."};
        StringBuilder stringBuilder = new StringBuilder();
        for (int i = 0; i < arr.length; i++) {
        	stringBuilder.append(arr[i] + " ");
        }
        String strArrayToString = stringBuilder.toString();
        System.out.println(strArrayToString);
    }
}

📌 실행결과

안녕하세요! 하마개발자입니다. 만나서 반갑습니다.

 

💕 join() 메소드

join() 메소드는 두 개의 인수를 가진다.

첫번째 인수는 문자열의 요소를 구분하는 기호이며, 두번째 인수는 문자열 배열이다.

아래 예제는 문자열의 요소를 언더바(_) 로 구분한다.

📌 예제

class Solution {
	public static void main(String[] args) {
    	String[] arr = {"안녕하세요!", "하마개발자입니다.", "만나서 반갑습니다."};
        String strArrayToString = String.join("_", arr);
        System.out.println(strArrayToString);
    }
}

📌 실행결과

안녕하세요!_하마개발자입니다._만나서 반갑습니다.

 

💕 Stream API

java 1.8 이상인 경우 Stream API의 Collectors.joining() 메소드를 사용하여 문자열 배열을 문자열로 변환할 수 있다.

📌 예제

import java.util.Arrays;
import java.util.stream.Collectors;

class Solution {
  
  public static String solution(String[] arr) {
  	String answer = Arrays
    	.stream
        .collect(Collectors.joining());
    return answer;
  }
  
  public static void main(String[] args) {
  	String[] arr = {"안녕하세요!", "하마개발자입니다.", "만나서 반갑습니다."};
    String a = solution(arr);
    System.out.println(a);
  }
  
}

 

📌 실행결과

안녕하세요!하마개발자입니다.만나서 반갑습니다.

 

'공부 > Java' 카테고리의 다른 글

스트링 클래스의 문제점  (0) 2024.06.25
스트링버퍼  (0) 2024.06.25
java.lang 패키지/오토박싱  (0) 2024.06.25
Object와 오버라이딩  (0) 2024.06.25
문자열 뒤집기 (Java String reverse)  (0) 2023.05.08