【Java入門】Stringの結合方法(concat)

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

「文字列を結合する方法が知りたい」
「appendを使用した文字列を結合する方法も知りたい」
「concatとappendの処理パフォーマンスが知りたい」

今回は、そんな悩みを解決するために、文字列を結合する方法をわかりやすく解説します!

concatとは?

concatメソッドは、引数で指定した文字列を「結合対象の文字列の最後に結合」するためのメソッドです。

concatの使用方法

concatメソッドを使用すれば、文字列同士を簡単に結合することができます。
以下にconcatメソッドで文字列を結合する方法を記述します。

実行結果

サンプルでは、String型を2つ宣言して文字列を設定しています。
次に結合した結果を格納するためのString型変数を宣言し、変数str1のオブジェクトに対してconcatメソッドを使用して、引数に結合対象の文字列を指定しています。

実行結果の通り、変数sconcatにはstr1とstr2が結合された値が返却されます。

appendを使用した文字列の結合

StringBuilderクラスのappendメソッドを使用することでも、文字列を結合することが可能です。

以下にappendメソッドを使用した文字列を結合する方法を記述します。

実行結果

サンプルではStringBuilderクラスの変数を宣言し、文字列を設定しています。
次にStringBuilderクラスの変数sbに対してappendメソッドを使用し、引数に文字列を指定しています。

出力結果を確認すると、文字列が結合されていることがわかります。

なお、StringBuilderクラスについては、以下の記事で詳しく解説しています!

速度面での比較

concatメソッドとappendメソッドは、文字列を結合するために使用しますが、処理パフォーマンスはどうなのでしょうか?

文字列を結合する処理をループで100回実行し、どちらの実行結果が早いのか?ナノ秒単位で比較してみました。

実行結果

実行結果のとおりStringクラスのconcatメソッドより、StringBuilderクラスのappendメソッドのほうが、文字列を結合する処理が早いことがわかりました。

concatメソッドは、メソッドを実行するたびにStringのオブジェクトをnewで新しく生成しているため、その分appendメソッドより処理が遅くなってしまいます。

そのため、大量の文字列を連結する場合は、処理パフォーマンスを考えるとappendメソッドを使用することをオススメします。

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

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

まとめ

ここでは、文字列を結合するconcatメソッドの基本的な使い方やappendメソッドの使い方、concatとappendの処理パフォーマンス比較検証などを行いました。

文字列結合などの文字列操作処理は、データベース格納時やファイル出力時など、さまざまな場面で使用することがあると思います。

もし、Stringの結合方法を忘れてしまったら、この記事を思い出してくださいね!

LINEで送る
Pocket

最短でエンジニアを目指すなら侍エンジニア塾

cta_under_bnr

侍エンジニア塾は業界で初めてマンツーマンレッスンを始めたプログラミングスクールです。これまでの指導実績は16,000名を超え、未経験から数多くのエンジニアを輩出しています。

あなたの目的に合わせてカリキュラムを作成し、現役エンジニア講師が専属であなたの学習をサポートするため効率よく学習を進めることができますよ。

無理な勧誘などは一切ありません。まずは無料体験レッスンを受講ください。

無料体験レッスンの詳細はこちら

書いた人

ヤマシタ

エンジニア歴10年のフリーランスエンジニア。ITに関わるさまざまなコンテンツの企画・制作も行っています。
ITに関してはノウハウ系、ライフハック系、トレンド系など、200本以上の執筆経験があります。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説