全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス

クラス java.lang.StringBuffer

java.lang.Object
   |
   +----java.lang.StringBuffer

public final class StringBuffer
extends Object
implements Serializable
文字列バッファは文字型の可変シーケンスを実装します。

文字列バッファはマルチスレッドによって安全に使用することができます。必要に応じてメソッドを同期して、特定のインスタンスに対する演算がすべて順次に発生するように動作します。

文字列バッファは、バイナリ文字列の連結演算子 + を実装するためにコンパイラで使用されます。

例えば、コード :

     x = "a" + 4 + "c"
 

は下記の同等コードにコンパイルされます。

     x = new StringBuffer().append("a").append(4).append("c")
                           .toString()
 

StringBuffer の基本演算子は、メソッド append および insert であり、どんな種類のデータも受け取るようにこのメソッドをオーバーロードします。メソッドはそれぞれ所定のデータを有効に文字列に変換し、文字列の文字型を文字列バッファに追加または挿入します。通常、メソッド append はバッファの文末にこの文字型を追加し、メソッド insert は指定された位置に文字型を追加します。

例えば、z を、現在 "start" を含む文字列バッファオブジェクトとみなす場合、 z.insert(4, "le") は文字列バッファに "starlet" が含まれるように変更することに対して、メソッド呼び出し z.append("le") は文字列バッファが "startle" を含むように作用します。

文字列バッファはすべて容量を持っています。文字列バッファに含まれる文字型シーケンスの長さが容量を超過しない限り、新しい内部バッファ配列を割り当てることが必要となります。内部バッファがオーバーフローする場合、自動的に容量が増加します。

参照:
ByteArrayOutputStream, String

Constructor Index

 o StringBuffer()
文字型がなく、初期容量が 16 文字である文字列バッファを構築する。
 o StringBuffer(int)
文字型がなく、初期容量が引数 length によって指定される文字列バッファを構築する。
 o StringBuffer(String)
文字列バッファを構築して、文字列引数と同じ文字型シーケンスを表す。

Method Index

 o append(boolean)
引数 boolean の文字列表現を文字列バッファに追加する。
 o append(char)
引数 char の文字列表現をこの文字列バッファに追加する。
 o append(char[])
配列引数 char の文字列表現をこの文字列バッファに追加する。
 o append(char[], int, int)
配列引数 char の部分配列の文字列表現をこの文字列バッファに追加する。
 o append(double)
引数 double の文字列表現をこの文字列バッファに追加する。
 o append(float)
引数 float の文字列表現をこの文字列バッファに追加する。
 o append(int)
引数 int の文字列表現をこの文字列バッファに追加する。
 o append(long)
引数 long の文字列表現をこの文字列バッファに追加する。
 o append(Object)
引数 Object の文字列表現をこの文字列バッファに追加する。
 o append(String)
文字列をこの文字列バッファに追加する。
 o capacity()
文字列バッファの現在の容量を返す。
 o charAt(int)
この文字列バッファの特定のインデックスの位置にある文字型を返す。
 o ensureCapacity(int)
バッファの容量が少なくとも指定の最低容量と等しくなるように確保する。
 o getChars(int, int, char[], int)
文字型をこの文字列バッファから転送先の文字型配列 dst にコピーする。
 o insert(int, boolean)
引数 boolean の文字列表現をこの文字列バッファに挿入する。
 o insert(int, char)
引数 char の文字列表現をこの文字列バッファに挿入する。
 o insert(int, char[])
配列引数 char の文字列表現を挿入する。
 o insert(int, double)
引数 double の文字列表現をこの文字列バッファに挿入する。
 o insert(int, float)
引数 float の文字列表現をこの文字列バッファに挿入する。
 o insert(int, int)
第二の引数 int の文字列表現をこの文字列バッファに挿入する。
 o insert(int, long)
引数 long の文字列表現をこの文字列バッファに挿入する。
 o insert(int, Object)
引数 Object の文字列表現をこの文字列バッファに挿入する。
 o insert(int, String)
文字列をこの文字列バッファに挿入する。
 o length()
この文字列バッファの長さ ( 文字数 ) を返す。
 o reverse()
この文字列バッファに含まれる文字型シーケンスを逆シーケンスにオーバーライドする。
 o setCharAt(int, char)
この文字列バッファの指定インデックスの文字型を ch に設定する。
 o setLength(int)
この文字列バッファの長さを設定する。
 o toString()
この文字列バッファのデータを表す文字列を変換する。

Constructors

 o StringBuffer
  public StringBuffer()
文字型がなく、初期容量が 16 文字である文字列バッファを構築します。

 o StringBuffer
  public StringBuffer(int length)
文字型がなく、初期容量が引数 length によって指定される文字列バッファを構築します。

パラメータ:
length - 初期容量
例外: NegativeArraySizeException
引数 length0 未満の場合
 o StringBuffer
  public StringBuffer(String str)
文字列バッファを構築して、これが文字列引数と同じ文字シーケンスを表すようにします。文字列バッファの初期容量は 16 と文字列引数の長さを加えたものになります。

パラメータ:
str - バッファの初期内容

Methods

 o length
  public int length()
この文字列バッファの長さ ( 文字数 ) を返します。

返り値 :
この文字列の文字数
 o capacity
  public int capacity()
文字列バッファの現在の容量を返します。容量は、新しく挿入する文字に利用できる記憶容量の合計であり、割り当てが発生する容量を超過しています。

返り値 :
この文字列バッファの現在の容量
 o ensureCapacity
  public synchronized void ensureCapacity(int minimumCapacity)
バッファの容量が少なくとも指定の最小容量と等しくなるよう確保します。この文字列バッファの現在の容量が引数よりも少ない場合は、新しく内部バッファをより大きな容量に割り当てます。新しい容量は下記のうち大きい方となります。 引数 minimumCapacity が正の数でない場合はこのメソッドを実行せず、単純に返します。

パラメータ:
minimumCapacity - 必要とされる最少容量
 o setLength
  public synchronized void setLength(int newLength)
この文字列バッファの長さを設定します。引数 newLength が文字列バッファの現在の長さより少ない場合、文字列バッファを切り捨て、引数 newLength によって指定される文字数を正確に含むようにします。

引数 newLength が現在の長さ以上である場合、十分な null 文字型 ('\u0000') を文字列バッファに追加して、この長さが引数 newLength になるようにします。

引数 newLength0 以上となる必要があります。

パラメータ:
newLength - 新しいバッファの長さ
例外: StringIndexOutOfBoundsException
引数 newLength が無効である場合、
参照:
length
 o charAt
  public synchronized char charAt(int index)
この文字列バッファの特定のインデックスの位置にある文字型を返します。

文字列バッファの最初の文字列は、インデックス 0 の位置にあり、次の文字列はインデックス 1 など、配列のインデックス付けに従っています。

インデックス引数は 0 以上、この文字列バッファの長さ未満である必要があります。

パラメータ:
index - 必要となる文字列のインデックス
返り値 :
この文字列バッファの指定インデックスの位置にある文字列
例外: StringIndexOutOfBoundsException
インデックスが無効である場合
参照:
length
 o getChars
  public synchronized void getChars(int srcBegin,
                                    int srcEnd,
                                    char dst[],
                                    int dstBegin)
文字型をこの文字列バッファから転送先の文字型配列 dst にコピーします。コピーされる最初の文字型はインデックス srcBegin にあり、コピーされる最後の文字型は srcEnd-1. にあります。コピーされる文字の合計数は srcEnd-srcBegin です。文字型を dstBegin で開始し以下で終了する dst の部分配列にコピーします。

     dstbegin + (srcEnd-srcBegin) - 1
 

パラメータ:
srcBegin - 文字列バッファのこのオフセットでコピー開始
srcEnd - 文字列バッファのこのオフセットでコピー終了
dst - データをコピーする配列先
dstBegin - dst 内のオフセット
例外: StringIndexOutOfBoundsException
バッファに無効なインデックスがある場合
 o setCharAt
  public synchronized void setCharAt(int index,
                                     char ch)
この文字列バッファの指定インデックスの位置にある文字列を ch に設定します。

オフセット引数は 0 以上、この文字列バッファ未満となる必要があります。

パラメータ:
index - 修正する文字型のインデックス
ch - 新しい文字型
例外: StringIndexOutOfBoundsException
インデックスが無効である場合
参照:
length
 o append
  public synchronized StringBuffer append(Object obj)
引数 Object の文字列表現をこの文字列バッファに追加します。

メソッド String.valueOf を用いたかのように、引数を文字列に変換します。それから、その文字列の文字型をこの文字列バッファに追加します。

パラメータ:
obj - Object
返り値 :
この文字列バッファ
参照:
valueOf, append
 o append
  public synchronized StringBuffer append(String str)
文字列をこの文字列バッファに追加します。

引数 String の文字型を順序正しくこの文字列バッファの内容に追加して、引数の長さの分この文字列バッファ長を増加させます。

パラメータ:
str - 文字列
返り値 :
この文字列バッファ
 o append
  public synchronized StringBuffer append(char str[])
引数 char の文字列表現をこの文字列バッファに追加します。

配列引数の文字型を順序正しくこの文字列バッファの内容に追加します。この文字列バッファの長さは引数の長さの分増加します。

パラメータ:
str - 追加する文字型
返り値 :
この文字列バッファ
 o append
  public synchronized StringBuffer append(char str[],
                                          int offset,
                                          int len)
配列引数 char の部分配列の文字列表現をこの文字列バッファに追加します。

文字型配列 str の文字型はインデックス offset で開始し、この文字列バッファの内容に順序正しく追加されます。この文字列バッファの長さは len の値分増加します。

パラメータ:
str - 追加する文字型
offset - 追加する最初の文字型のインデックス
len - 追加する文字数
返り値 :
この文字列バッファ
 o append
  public StringBuffer append(boolean b)
引数 boolean の文字列表現を文字列バッファに追加します。

メソッド String.valueOf を用いたかのように、引数を文字列に変換します。それから、その文字列の文字型をこの文字列バッファに追加します。

パラメータ:
b - boolean
返り値 :
この文字列バッファ
参照:
valueOf, append
 o append
  public synchronized StringBuffer append(char c)
引数 char の文字列表現をこの文字列バッファに追加します。

引数をこの文字列バッファの内容に追加します。 この文字列バッファの長さは 1 だけ増加します。

パラメータ:
ch - char
返り値 :
この文字列バッファ
 o append
  public StringBuffer append(int i)
この文字列バッファに引数 int の文字列表現を追加します。

String.valueOf を用いたかのように、引数を文字列に変換します。それから、その文字列の文字型をこの文字列バッファに追加します。

パラメータ:
i - int
返り値 :
この文字列バッファ
参照:
valueOf, append
 o append
  public StringBuffer append(long l)
引数 long の文字列表現をこの文字列バッファに追加します。

メソッド String.valueOf を用いたかのように、引数を文字列に変換し、それからその文字列の文字型をこの文字列バッファに追加します。

パラメータ:
l - long
返り値 :
この文字列バッファ
参照:
valueOf, append
 o append
  public StringBuffer append(float f)
引数 float の文字列表現をこの文字列バッファに追加します。

メソッド String.valueOf を用いたかのように、引数を文字列に変換します。それからこの文字列バッファにその文字列の文字型を追加します。

パラメータ:
f - float
返り値 :
この文字列バッファ
参照:
valueOf, append
 o append
  public StringBuffer append(double d)
引数 double の文字列表現をこの文字列バッファに追加します。

メソッド String.valueOf を用いたかのように、引数を文字列に変換します。それから、その文字列の文字型をこの文字列バッファに追加します。

パラメータ:
d - double
返り値 :
この文字列バッファ
参照:
valueOf, append
 o insert
  public synchronized StringBuffer insert(int offset,
                                          Object obj)
引数 Object の文字列表現をこの文字列バッファに挿入します。

メソッド String.valueOf を用いたかのように、第二の引数を文字列に変換します。それから、その文字列の文字型をこの文字列バッファに指示されたオフセットの位置で挿入します。

オフセット引数は 0 以上、この文字列バッファの長さ以下となる必要があります。

パラメータ:
offset - オフセット
b - Object
返り値 :
この文字列バッファ
例外: StringIndexOutOfBoundsException
オフセットが無効である場合
参照:
valueOf, insert, length
 o insert
  public synchronized StringBuffer insert(int offset,
                                          String str)
この文字列バッファに文字列を挿入します。

引数 String の文字型をこの文字列バッファに指定されたオフセットで順序正しく挿入します。この文字列バッファの長さは引数の長さだけ増加します。

オフセット引数は 0 以上、この文字列バッファの長さ以下となる必要があります。

パラメータ:
offset - オフセット
str - 文字列
返り値 :
この文字列バッファ
例外: StringIndexOutOfBoundsException
オフセットが無効である場合
参照:
length
 o insert
  public synchronized StringBuffer insert(int offset,
                                          char str[])
配列引数 char の文字列表現をこの文字列バッファに挿入します。

配列引数の文字型をこの文字列バッファの内容に offset によって示された位置で挿入します。この文字列バッファの長さは引数の長さの分だけ増加します。

パラメータ:
offset - オフセット
ch - 文字型配列
返り値 :
この文字列バッファ
例外: StringIndexOutOfBoundsException
オフセットが無効である場合
 o insert
  public StringBuffer insert(int offset,
                             boolean b)
引数 boolean の文字列表現をこの文字列バッファに挿入します。

メソッド String.valueOf を用いたかのように、第二の引数を文字列に変換します。それから、その文字列の文字型をこの文字列バッファに指定されたオフセットで挿入します。

オフセット引数は 0 以上、この文字列バッファの長さ以下となる必要があります。

パラメータ:
offset - オフセット
b - boolean
返り値 :
この文字列バッファ
例外: StringIndexOutOfBoundsException
オフセットが無効である場合
参照:
valueOf, insert, length
 o insert
  public synchronized StringBuffer insert(int offset,
                                          char c)
引数 char の文字列表現をこの文字列バッファに挿入します。

第二の引数をこの文字列バッファの内容にoffset で指定される位置で挿入します。この文字列バッファの長さは 1 つだけ増加します。

オフセット引数は 0 以上、この文字列バッファの長さ以下である必要があります。

パラメータ:
offset - オフセット
ch - char
返り値 :
この文字列バッファ
例外: StringIndexOutOfBoundsException
オフセットが無効である場合
参照:
length
 o insert
  public StringBuffer insert(int offset,
                             int i)
第二の引数 int の文字列表現をこの文字列バッファに挿入します。

メソッド String.valueOf を用いたかのように、第二の引数を文字列に挿入します。それから、その文字列の文字型をこの文字列バッファに指定されたオフセットの位置で挿入します。

オフセット引数は 0 以上、この文字列バッファの長さ以下である必要があります。

パラメータ:
offset - オフセット
b - int
返り値 :
この文字列バッファ
例外: StringIndexOutOfBoundsException
オフセットが無効である場合
参照:
valueOf, insert, length
 o insert
  public StringBuffer insert(int offset,
                             long l)
引数 long の文字列表現をこの文字列バッファに挿入します。

メソッド String.valueOf を用いたかのように、第二の引数を文字列に変換します。それから、その文字列の文字型をこの文字列バッファに指定されたオフセットの位置で挿入します。

オフセット引数は 0 以上、この文字列バッファ長さ以下である必要があります。

パラメータ:
offset - オフセット
b - long
返り値 :
この文字列バッファ
例外: StringIndexOutOfBoundsException
オフセットが無効である場合
参照:
valueOf, insert, length
 o insert
  public StringBuffer insert(int offset,
                             float f)
引数 float の文字列表現をこの文字列バッファに挿入します。

メソッド String.valueOf を用いたかのように、第二の引数を文字列に変換します。それからその文字列の文字型をこの文字列バッファに指定されたオフセットの位置で挿入します。

オフセット引数は 0 以上、この文字列バッファ長さ以下となる必要があります。

パラメータ:
offset - オフセット
b - float
返り値 :
この文字列バッファ
例外: StringIndexOutOfBoundsException
オフセットが無効である場合
参照:
valueOf, insert, length
 o insert
  public StringBuffer insert(int offset,
                             double d)
引数 double の文字列表現をこの文字列バッファに挿入します。

メソッド String.valueOf を用いたかのように、第二の引数を文字列に変換します。それからその文字列の文字型をこの文字列バッファに指定されたオフセットの位置で挿入します。

オフセット引数は 0 以上、この文字列バッファの長さ以下である必要があります。

パラメータ:
offset - オフセット
b - double
返り値 :
この文字列バッファ
例外: StringIndexOutOfBoundsException
オフセットが無効である場合
参照:
valueOf, insert, length
 o reverse
  public synchronized StringBuffer reverse()
この文字列バッファに含まれる文字型シーケンスを逆のシーケンスに置き換えます。

返り値 :
この文字列バッファ
 o toString
  public String toString()
この文字列バッファのデータを表す文字列を変換します。新しい String オブジェクトを割り当て、初期化して、現在この文字列バッファが表す文字型シーケンスを含むようにします。それから、この String を返します。この結果文字列バッファに生じる変化は String の内容に影響を及ぼしません。

返り値 :
文字列バッファの文字列表現
オーバーライド:
クラス ObjecttoString

全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス