Javaで文字列を挿入するinsertメソッド【StringBuilderクラス】

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

Javaで指定した位置に文字列を挿入したい場合、StringBuilderクラスのinsertメソッドを使う。

このページではinsertメソッドを利用して、文字列を任意の場所に追加する方法についてお伝えしよう。

文字列を挿入するinsertメソッド

指定した位置に文字列を挿入したい場合、StringBufferクラスもしくはStringBuilderクラスを使うことで実現できる。

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

そのため、単純に文字列操作をする場合はStringBuilderクラスを使うのがオススメだ。

StringBuilderクラスを利用しての文字列挿入処理

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

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

対象文字列.insert(追加位置,追加対象 )

追加位置には0 に等しいかそれより大きく、対象文字列の長さ(文字数)に等しいかこれより小さい値を設定できる。

対象文字列の文字数を超える値を設定すると、エラーが発生するので注意しよう。

追加対象としての引数にはboolean型・char型・char型の配列・double型・float型・int型・long型・String型など様々な型の値を設定できる。

長々と説明しているが、サンプルコードの飛んでしまっても構わない。

boolean型

insert(int offset,boolean b)

戻り値の型

StringBuilder

内容

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

最終的には、2 番目の引数が文字列に変換されてから、その文字列の文字がこの文字列内の指定されたインデックス位置に挿入された場合とまったく同じ結果になる。

char型

insert(int offset,char c)

戻り値の型

StringBuilder

内容

char 引数の文字列表現をこの文字列に挿入する。

最終的には、2 番目の引数が文字列に変換されてから、その文字列の文字がこの文字列内の指定されたインデックス位置に挿入された場合とまったく同じ結果になる。

char型配列

insert(int offset,char[] a)

戻り値の型

StringBuilder

内容

char 配列引数の文字列表現をこの文字列に挿入します。

この文字列の内容の offset で示された位置に、配列引数の文字が挿入される。この文字列の長さは、引数の長さの分だけ増える。

最終的には、2 番目の引数が文字列に変換されてから、その文字列の文字がこの文字列内の指定されたオフセット位置に挿入された場合とまったく同じ結果になる。

double型

insert(int offset,double d)

戻り値の型

StringBuilder

内容

double 引数の文字列表現をこの文字列に挿入する。

最終的には、2 番目の引数が文字列に変換されてから、その文字列の文字がこの文字列内の指定されたオフセット位置に挿入された場合とまったく同じ結果になる。

float型

insert(int offset,float f)

戻り値の型

StringBuilder

内容

float 引数の文字列表現をこの文字列に挿入する。

最終的には、2 番目の引数が文字列に変換されてから、その文字列の文字がこの文字列内の指定されたオフセット位置に挿入された場合とまったく同じ結果になる。

int型

insert(int offset,int i)

戻り値の型

StringBuilder

内容

2 番目の int 引数の文字列表現をこの文字列に挿入する。

最終的には、2 番目の引数が文字列に変換されてから、その文字列の文字がこの文字列内の指定されたオフセット位置に挿入された場合とまったく同じ結果になる。

long型

insert(int offset,long l)

戻り値の型

StringBuilder

内容

long 引数の文字列表現をこの文字列に挿入する。

最終的には、2 番目の引数が文字列に変換されてから、その文字列の文字がこの文字列内の指定されたオフセット位置に挿入された場合とまったく同じ結果になる。

String型

insert(int offset,String str)

戻り値の型

StringBuilder

内容

この文字列の指定されたオフセット位置に String 引数の文字が順番に挿入され、その位置にもともとあった文字はすべて上方に移動され、この文字列の長さが引数の長さ分だけ増加する。str が null の場合は、"null" という 4 文字が挿入される。

サンプルコード

実行結果

サンプルコードの説明

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

  • [1] StringBuilder型の変数sbを「ABC」で初期化し結果を表示する。
  • [2] 変数sbにboolean型変数boolを0文字目に挿入し、結果を表示する。boolean値が文字列として追加されている。
  • [3] 変数sbにdouble型変数dNumを4文字目に挿入し、結果を表示する。
  • [4] 変数sbにchar型変数chを13文字目に挿入し、結果を表示する。
  • [5] 変数sbにchar型配列の変数cArrayを2文字目に挿入し、結果を表示する。配列の要素を取り出して一つ一つ挿入しなくても一度の操作で配列中の文字すべてを挿入。
  • [6] 変数sbにint型変数numを15文字目に挿入し、結果を表示する。
  • [7] 変数sbにlong型変数lNumを17文字目に挿入し、結果を表示する。
  • [8] 変数sbにfloat型変数fNumを23文字目に挿入し、結果を表示する。
  • [9] 変数sbにString型変数strを6文字目に挿入し、結果を表示する。
  • [10] 変数sbにString型変数strNullを25文字目に挿入し、結果を表示する。strNullにはNull値(※)を設定。「null」という文字列が挿入される。

※NULL 何もないことを表す特殊な値。

まとめ

このページではJavaで文字列を任意の場所に挿入するStringBuilderクラスのinsertメソッドについてご紹介した。

使う場面は限定されるかもしれないが、知っておいて損はないメソッドだ。ぜひ活用していただければと思う。

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

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

短期間でエンジニアになる方法

・「まったくの初心者だけどエンジニアになりたい!」

・「プログラマーとして転職をしたい!」

という方はリナックスアカデミーの資料を見てみてください。短期間で未経験からエンジニアになることができるスクールとして15年間選ばれ続けてきた理由やノウハウが載った資料です。

エンジニアの入り口に立つために必要な勉強技術の最新動向本当に使えるIT資格学習に役立つ国からの奨励金などの情報が詰まっています。

無料で2,3日中にお手元にお届けします。


資料を見てみる

SNSでもご購読できます。

コメントを残す

*