Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

자바(Java)에서 Character 리스트를 문자열(String)로 변환하는 방법

자바 프로그래밍을 하다 보면 Character 타입의 리스트(List)를 하나의 문자열(String)로 합쳐야 하는 경우가 종종 있습니다. 이럴 때 Stream API를 활용하면 단 한 줄의 코드로 손쉽게 변환할 수 있습니다.

문자 리스트 준비하기

먼저 다음과 같이 여러 개의 문자를 담고 있는 리스트가 있다고 가정해 보겠습니다.

List<Character> list = Arrays.asList('W', 'e', 'l', 'c', 'o', 'm', 'e');

리스트를 문자열로 변환하는 방법

스트림(Stream)을 사용하면 위 리스트를 아래와 같이 간단하게 문자열로 변환할 수 있습니다.

String string = list.stream().map(String::valueOf).collect(Collectors.joining());

동작 원리를 살펴보면 다음과 같습니다.

  • list.stream() : 리스트를 스트림으로 변환합니다.
  • map(String::valueOf) : 각 Character 요소를 String 타입으로 변환합니다.
  • collect(Collectors.joining()) : 변환된 문자열들을 구분자 없이 하나로 연결합니다.

전체 예제 코드

다음은 자바에서 Character 리스트를 문자열로 변환하는 완전한 예제 프로그램입니다.

import java.util.stream.Collectors;
import java.util.Arrays;
import java.util.List;
public class Demo {
   public static void main(String[] args) {
      List<Character> list = Arrays.asList('W', 'e', 'l', 'c', 'o', 'm', 'e');
      String string = list.stream().map(String::valueOf).collect(Collectors.joining());
      System.out.println("String = "+string);
   }
}

실행 결과

프로그램을 실행하면 리스트에 담긴 문자들이 순서대로 연결되어 다음과 같은 결과가 출력됩니다.

String = Welcome

이처럼 map()Collectors.joining()을 조합하면 별도의 반복문 없이도 깔끔하고 가독성 좋은 코드로 문자 리스트를 문자열로 변환할 수 있습니다.