【Java String】joinメソッドで文字列を連結する方法まとめ


JavaのStringクラスのjoinメソッドで文字列を連結する方法が知りたい
String型の配列でもjoinメソッドで連結できるの?

Javaで文字列を扱う上で、文字列を連結するといった対応が必要なことがあります。

今回は文字列を連結するStringクラスのjoinメソッドの使い方について、わかりやすく解説します!

なお、Javaの記事については、こちらにまとめています。

目次

joinメソッドとは

joinメソッドは、Java8から新しく追加された機能で、StringJoinerクラスのメソッドになります。

java.util.StringJoiner

joinは文字列を連結するときに使用するメソッドで、第一引数をデリミタとし、第二引数を接頭辞として以降指定された接頭辞の終わりまでの文字列が区切られます。

つまり、指定したデリミタのコピーを使用して、第二引数以降指定した文字列を、デリミタ区切りで結合した文字列として返します。

String sj = String.join("デリミタ", "文字列1", "文字列2", "文字列3");

java8で新しく追加された機能ついては、以下の記事で詳しく解説しています!

また、スレッドが終了するまで待機するメソッドとしてjoinメソッドがありますが、機能としては別物です。

joinで文字列を連結する方法

文字列を連結するにはさまざまな方法がありますが、java8で追加されたjoinメソッドは使い方がとてもシンプルです。ここでは、joinメソッドを使用して、文字列を連結する方法について説明します。

文字列を連結する

joinを使用した文字列の連結方法を以下に記述します。

public class Main {
    public static void main(String[] args) throws Exception {

        //joinを使用する
        String str = String.join(",", "apple", "orange", "melon");
        System.out.println(str);
    }
}

実行結果

apple,orange,melon

サンプルでは、String型変数を定義し、joinメソッドを使用して第一引数にデリミタ「”,”(カンマ)」を指定しています。

そのため、第二引数以降の文字列が「”,”」で区切られることになります。なお、指定するデリミタは「”.”(ピリオド)」「”:”(コロン)」でも可能です。

また、joinメソッドはString型の配列でも使用することができます。

String型の配列を指定した場合のjoinメソッドの使用方法を、以下に記述します。

public class Main {
    public static void main(String[] args) throws Exception {
                
        //joinを使用する
        String strarray[] = {"apple", "orange", "melon"};
        String str = String.join(",", strarray);
        System.out.println(str);
    }
}

実行結果

apple,orange,melon

サンプルでは、String型の配列を定義し、joinメソッドを使用して第一引数にデリミタを指定し、第二引数にString型配列を指定しています。大量のString型配列を連結する場合も、配列ごと一気に連結ができますので、非常に便利です。

StringJoinerの使い方

joinメソッドのクラスであるStringJoinerについても、join同様に文字を連結することが可能です。

StringJoinerを使用した文字列の連結方法を、以下に記述します。

import java.util.StringJoiner;

public class Main {
    public static void main(String[] args) throws Exception {
        
        //joinerを使用する
        String strarray[] = {"apple", "orange", "melon"};
        StringJoiner sj = new StringJoiner(",");
        
        for (String s : strarray)
        {
            sj.add(s);
        }
        System.out.println(sj.toString());   
    }
}

実行結果

apple,orange,melon

サンプルでは、String型配列を宣言して値を格納し、StringJoinerクラスを宣言して引数にデリミタを設定しています。次にStringJoinerの変数に、addメソッドでString型配列の値を順番に格納しています。

結果を確認すると、joinメソッド同様に文字列が連結されているのがわかります。

Stringについてもっと詳しく知りたい方へ

Stringのさまざまな使い方については、以下の記事にまとめていますので、ぜひ参考にしてくださいね!

まとめ

joinメソッドの基本的な使い方から、joinerメソッドの使い方まで説明しました。

文字列を連結する方法はいくつかありますが、java8からのjoinメソッドの追加によって、より簡単に文字列の連結が可能になったと言えます。

もし、joinメソッドの使用方法を忘れてしまったら、この記事を思い出してくださいね!

この記事を書いた人

【プロフィール】
DX認定取得事業者に選定されている株式会社SAMURAIのマーケティング・コミュニケーション部が運営。「質の高いIT教育を、すべての人に」をミッションに、IT・プログラミングを学び始めた初学者の方に向け記事を執筆。
累計指導者数4万5,000名以上のプログラミングスクール「侍エンジニア」、累計登録者数1万8,000人以上のオンライン学習サービス「侍テラコヤ」で扱う教材開発のノウハウ、2013年の創業から運営で得た知見に基づき、記事の執筆だけでなく編集・監修も担当しています。
【専門分野】
IT/Web開発/AI・ロボット開発/インフラ開発/ゲーム開発/AI/Webデザイン

目次