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


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

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

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

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メソッドの使用方法を忘れてしまったら、この記事を思い出してくださいね!

LINEで送る
Pocket

「プログラミング、右も左もわからない…」という方にオススメ

当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。

その経験を通してプログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。

侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。

cta_under_bnr

「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。

書いた人

ヤマシタ

システムエンジニアとして10年勤務→フリーランスへ。現在は侍ブログ編集部としてこれまでに200記事以上の記事を執筆。
大規模システム開発からWebアプリ開発まで経験あり。最近ではPythonの機械学習に挑戦中。