icon
icon

Javaのappendメソッドを使って文字列を連結する方法を現役エンジニアが解説【初心者向け】

初心者向けにJavaのappendメソッドを使って文字列を連結する方法について解説しています。StringBuilderクラスのappendメソッドを使用することで、文字列同士を繋げることができます。appendメソッドの書き方とconcatメソッドとの違いについて学びましょう。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

Javaのappendメソッドを使って文字列を連結する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

Javaについてそもそもよく分からないという方は、Javaとは何なのか解説した記事を読むとさらに理解が深まるでしょう。

 

なお本記事は、TechAcademyのオンラインブートキャンプJava講座の内容をもとに作成しています。

 

田島悠介

今回は、Javaに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

appendメソッドを使って文字列を連結する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

appendメソッドとは

appendメソッドとは、文字列を連結する際に使用するメソッドです。

StringBuilderクラスのメソッドであり、文字列が連結されても新しくインスタンスが生成されることはありません。

たとえば、「おはよう」の後ろに「ございます」を連結させて「おはようございます」と表したい場合などに利用可能です。

 

appendメソッドの使い方

StringBuilderクラスのappendメソッドの使い方は下記の通りです。

対象文字列.append(追加文字列)

対象文字列の末尾に追加文字列が連結されます。

 

例として、次のように「おはよう」という文字列を持ったStringBuilderオブジェクトを作成しましょう。

StringBuilder sb = new StringBuilder("おはよう");

「ございます」という文字列を連結したい場合には、

sb.append("ございます");

とすることで、「おはようございます」という文字列を持ったStringBuilderオブジェクトができました。

 

[PR] Javaプログラミングで挫折しない学習方法を動画で公開中

文字列を連結する方法

文字列を連結するには「+」演算子で文字列を連結することもできます。

しかし、Stringクラスの性質上、連結のたびに新しいインスタンスが生成されることは効率的ではありません。

StringBuilderクラスのappendメソッドの場合は、文字列が連結されてもインスタンスが新しく生成されることはありません。

繰り返し文字列を連結するような場合では、StringBuilderクラスのappendメソッドを使うこと推奨します。

 

appendメソッドとconcatメソッドの違い

Stringクラスのメソッドには、文字列を連結するメソッドとしてconcatメソッドがあります。

concatメソッドは、appendメソッドと同様に文字列を連結するメソッドであるものの、連結する際には「+」演算子と同様に新しいインスタンスが生成されてしまう点が異なります。

 

実際に書いてみよう

下記のコードは、StringBuilderクラスのappendメソッドを利用したサンプルコードです。

public class StringBuilderExample {
	public static void main(String[] args) {
		StringBuilder sb = new StringBuilder("abc");
		sb.append("def");
		sb.append("ghi");
		System.out.println(sb);
	}
}

実行結果

abcdefghi

元の文字列「abc」に「def」と「ghi」がそれぞれ連結されました。

 

執筆してくれたメンター

松井紀明

メーカー系で17年エンジニアとして勤務後、現在はフリーのエンジニアとしてリモートワークで働いています。

Java、Perl、COBOL、最近ではRuby、PHP等、様々な言語での開発を経験しています。

TechAcademyではJavaコースを担当しています。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

TechAcademyでは、初心者でも、JavaやServletの技術を使ってWebアプリケーション開発を習得できるオンラインブートキャンプを開催しています。

 

また、現役エンジニアから学べる無料体験も実施しているので、参加してみてください。