Java - Listをコンマ(,)で連結して1つの文字列を作成する

リストのすべての要素をコンマで連結して1つの文字列にする方法を紹介します。

1. String.join() でコンマで連結された文字列変換

Java8 で提供される String.join(delimiter, list) は引数として渡された delimiter でリストの要素を連結して 1 つの文字列を生成します。

以下のように、リストの要素がコンマで連結された文字列を作成できます。

import java.util.Arrays;
import java.util.List;

public class Example {

    public static void main(String[] args) {

        List<String> myList = Arrays.asList("Hello", "World", "Java");

        String str = String.join(",", myList);
        System.out.println(str);
    }
}

Output:

Hello,World,Java

2. Commons ライブラリでコンマで連結された文字列変換

Mavenプロジェクトは、次のようにCommonsライブラリへの依存関係を設定できます。

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.0</version>
</dependency>

Commons ライブラリの StringUtils.join(list, delimiter)String.join() と同じように delimiter で連結された文字列を作成します。

以下のように、カンマで連結された文字列を作成できます。

import org.apache.commons.lang3.StringUtils;

import java.util.Arrays;
import java.util.List;

public class Example1 {

    public static void main(String[] args) {

        List<String> myList = Arrays.asList("Hello", "World", "Java");

        String str = StringUtils.join(myList, ',');
        System.out.println(str);
    }
}

Output:

Hello,World,Java

3. Streamでコンマで連結された文字列変換

Streamを使用して、以下のようにコンマで連結された文字列を生成できます。

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

public class Example2 {

    public static void main(String[] args) {

        List<String> myList = Arrays.asList("Hello", "World", "Java");

        String str = myList.stream().collect(Collectors.joining(","));
        System.out.println(str);
    }
}

Output:

Hello,World,Java
codechachaCopyright ©2019 codechacha