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






 
        