Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaで文字列のリストをカンマ区切りの文字列に変換する方法

この記事では、Javaを使って文字列のリスト(List)をカンマ区切りの1つの文字列に変換する方法について解説します。

リスト(List)とは

リストとは、要素を順序どおりに格納し、インデックスを使ってアクセスできるコレクションです。要素の挿入・更新・削除・検索をインデックスベースで行えるメソッドが用意されており、重複した要素を持つこともできます。

今回実現したい処理は以下のとおりです。

入力例

Input list: [Java, Scala, Python]

期待される出力

The list with comma separated elements: Java, Scala, Python

アルゴリズム

処理の手順は次のようになります。

Step 1 - 処理を開始する
Step 2 - リスト(input_list)を宣言する
Step 3 - リストに値を設定する
Step 4 - String.join() メソッドを使い、各要素の間にカンマを挿入して連結する
Step 5 - 結果を表示する
Step 6 - 処理を終了する

ポイントは String.join(区切り文字, リスト) です。この組み込みメソッドを使うことで、ループ処理を書かずに簡潔に要素を連結できます。

例1:mainメソッド内ですべての処理を行う場合

ここでは、すべての操作をmain関数内にまとめて記述します。

import java.util.*;
public class Demo {
    public static void main(String args[]){
        List<String> input_list =
        new ArrayList<>( Arrays.asList("Java", "Scala", "Python"));
        System.out.println("The input_list is defined as: " + input_list);
        String string = String.join(", ", input_list);
        System.out.println("The list with comma separated elements: " + string);
    }
}

出力結果

The input_list is defined as: [Java, Scala, Python]
The list with comma separated elements: Java, Scala, Python

例2:オブジェクト指向で関数に分割する場合

次に、処理を独立したメソッドとして切り出し、オブジェクト指向らしい構成で記述します。

import java.util.*;
public class Demo {
    static void add_comma(List<String> input_list){
        String string = String.join(", ", input_list);
        System.out.println("The list with comma separated elements: " + string);
    }
    public static void main(String args[]){
        List<String> input_list =
        new ArrayList<>( Arrays.asList("Java", "Scala", "Python"));
        System.out.println("The list is defined as: " + input_list);
        add_comma(input_list);
    }
}

出力結果

The list is defined as: [Java, Scala, Python]
The list with comma separated elements: Java, Scala, Python

補足:その他の変換方法

String.join() 以外にも、Java 8以降であればStream APIを使って次のように書くこともできます。

String result = input_list.stream()
    .collect(Collectors.joining(", "));

また、StringBuilder を使ってforループで要素を順に連結する方法もあります。可読性や要件に応じて使い分けるとよいでしょう。

  1. Pythonで文字のリストを文字列に変換する方法を解説

    Pythonでは、リスト内の個々の要素をひとつの文字列にまとめたい場面がよくあります。たとえば、データを保存したり送信したりする際に必要となるシリアライズ(直列化)の処理では、このような変換が非常に役立ちます。具体的には、次のような変換を指します。[h, e, l, l, o, , w, o, r, l, d] → hello worldjoinメソッドを使った変換Pythonには、このような変換を実現するためのjoin()メソッドが標準で用意されています。joinメソッドは、区切り文字(デリミタ)として使う文字列に対して呼び出し、引数に渡したリストの各要素を連結します。今回は各文字をつなげ

  2. JavaでList(リスト)を配列に変換する方法|toArray()とArrays.asList()の使い方

    Javaの開発において、List(リスト)と配列(Array)の相互変換は非常によく使われる基本的な操作です。 Listを配列に変換する最も簡単かつ推奨される方法は、.toArray()メソッドを使うことです。逆に、配列をListに戻したい場合は、Arrays.asList()メソッドを使用します。 以下では、文字列(String)のListや整数(Integer)のListを、それぞれ対応する配列に変換する具体例を紹介します。 String型のListを配列に変換する import java.util.ArrayList; import java.util.List; public cl