Javaで文字列を追加するappendメソッド【StringBuilderクラス】

StringBuilder appendメソッド
  • このエントリーをはてなブックマークに追加
  • Pocket

Javaで文字列を追加するにはいくつかの方法があるが、StringBuilderクラスを使うのも便利だ。

このページではStringBuilderクラスのappendメソッドを利用して、文字列を追加する方法をお伝えしよう。

文字列を追加する(append)

文字列「おはよう」へ「ございます」という文字列を追加して「おはようございます」としたい場合、以下の複数の方法がある。

  • Stringクラスを使用する。
  • StringBufferクラスを使用する。
  • StringBuilderクラスを使用する。

1のStringクラスを使用する場合は、プラス(+)演算子を使用して文字列を連結する。

ただし、Stringクラスの文字列は値を変更することができないので、連結した結果は新しい変数へ代入する必要がある。

2のStringBufferクラスと3のStringBuilderクラスはほぼ同じ機能を持つ。

どちらも新しいオブジェクトを新しく作ることなく、文字列の内容を変更することができる。

StringBuilderクラスはJava1.5で新しく追加されたクラスで、StringBufferよりも効率よく処理が行われるようになっている。

StringBuilderクラスを利用しての文字列追加処理

StringBuilderクラスを使った文字列の追加処理を見ていこう。

書き方の基本はこうなる。

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

対象文字列の末尾へ追加対象が文字列として追加される。

追加対象として引数に指定できる値にはboolean型・char型・char型の配列・double型・float型・int型・long型・String型・StringBuffer型・・と様々な種類が用意されている。

どの型が引数として設定されても、文字列に変換して追加される。下記長く書いているが、お伝えしているのは同じ話だ。

サンプルコードまで飛んでいただいて構わない。

boolean型

append(boolean b)

戻り値の型

StringBuilder

内容

boolean 引数の文字列表現を対象文字列に追加する。

引数は、文字列に変換され、その文字列の文字が対象文字列に追加される。

char型

append(char c)

戻り値の型

StringBuilder

内容

char 引数の文字列表現を対象文字列に追加する。

引数は対象文字列に追加される。対象文字列の長さは 1 だけ増加する。

char型配列

append(char[] str)

戻り値の型

StringBuilder

内容

char 配列引数の文字列表現を対象文字列に追加する。

配列引数の文字は、対象文字列の内容に順番に追加される。対象文字列の長さは引数の長さの分だけ増加する。

double型

append(double d)

戻り値の型

StringBuilder

内容

double 引数の文字列表現を対象文字列に追加する。

引数は文字列に変換され、その文字列の文字が対象文字列に追加される。

float型

append(float f)

戻り値の型

StringBuilder

内容

float 引数の文字列表現を対象文字列に追加する。

引数は文字列に変換され、その文字列の文字が対象文字列に追加される。

int型

append(int i)

戻り値の型

StringBuilder

内容

int 引数の文字列表現を対象文字列に追加する。

引数は文字列に変換され、その文字列の文字が対象文字列に追加される。

long型

append(long lng)

戻り値の型

StringBuilder

内容

long 引数の文字列表現を対象文字列に追加する。

引数は文字列に変換され、その文字列の文字が対象文字列に追加される。

String型

append(String str)

戻り値の型

StringBuilder

内容

指定された文字列を対象文字列に追加する。

String 引数の文字が、順番に対象文字列に追加される。その結果、引数の長さの分だけ対象文字列の長さが増えます。str が null の場合、"null" の 4 文字が追加される。

StringBuffer型

append(StringBuffer sb)

戻り値の型

StringBuilder

内容

指定された StringBuffer を対象文字列に追加する。

StringBuffer 引数の文字が、順番に対象文字列に追加される。その結果、引数の長さの分だけ対象文字列の長さが増えます。sb が null の場合、"null" の 4 文字が対象文字列に追加される。

サンプルコード

実行結果

サンプルコードの説明

簡単にサンプルコードの説明を行おう。

  • [1] StringBuilder型の変数sbを「おはよう」で初期化し、appendメソッドを利用して文字列「ございます。」を追加。結果を表示する。
  • [2] 変数sbにboolean型変数boolを追加し、結果を表示する。boolean値が文字列として追加されている。
  • [3] 変数sbにdouble型変数dNumを追加し、結果を表示する。
  • [4] 変数sbにchar型変数chを追加し、結果を表示する。
  • [5] 変数sbにchar型配列の変数cArrayを追加し、結果を表示する。配列の要素を取り出して一つ一つ追加しなくても一度の操作で配列中の文字すべてを追加
  • [6] 変数sbにint型変数numを追加し、結果を表示する。
  • [7] 変数sbにlong型変数lNumを追加し、結果を表示する。
  • [8] 変数sbにfloat型変数fNumを追加し、結果を表示する。
  • [9] 変数sbにString型変数strを追加し、結果を表示する。
  • [10] 変数sbにStringBuffer型変数sbfを追加し、結果を表示する。
  • [11] 変数sbにString型変数strNullを値がnullのまま追加し、結果を表示する。

まとめ

このページではJavaで文字列を追加するStringBuilderクラスのappendメソッドについてご紹介した。

処理は早く、新しくオブジェクトを作ることもない。ぜひ積極的に使っていただければと思う。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できます。

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リスキルテクノロジーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リスキルテクノロジーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する