Java-string-buffer
文字列バッファおよび文字列ビルダクラス
*StringBuffer* および *StringBuilder* クラスは、文字列に多くの変更を加える必要がある場合に使用されます。
Stringとは異なり、StringBuffer型およびString Builder型のオブジェクトは、多くの新しい未使用オブジェクトを残さずに何度も変更できます。
StringBuilderクラスはJava 5で導入されました。StringBufferとStringBuilderの主な違いは、StringBuildersメソッドがスレッドセーフではない(同期されない)ことです。
StringBufferよりも高速であるため、可能な限り StringBuilder を使用することをお勧めします。 ただし、スレッドの安全性が必要な場合は、StringBufferオブジェクトが最善の選択肢です。
例
public class Test {
public static void main(String args[]) {
StringBuffer sBuffer = new StringBuffer("test");
sBuffer.append(" String Buffer");
System.out.println(sBuffer);
}
}
これは、次の結果を生成します-
出力
test String Buffer
StringBufferメソッド
以下は、StringBufferクラスでサポートされている重要なメソッドのリストです-
Sr.No. | Methods & Description |
---|---|
1 |
public StringBuffer append(String s) メソッドを呼び出したオブジェクトの値を更新します。 このメソッドは、boolean、char、int、long、Stringsなどを取ります。 |
2 |
このメソッドは、メソッドを呼び出したStringBufferオブジェクトの値を反転します。 |
3 |
public delete(int start, int end) 開始インデックスから終了インデックスまでの文字列を削除します。 |
4 |
public insert(int offset, int i) このメソッドは、オフセットで指定された位置に文字列 s を挿入します。 |
5 |
replace(int start, int end, String str) このメソッドは、このStringBufferの部分文字列の文字を、指定された文字列の文字に置き換えます。 |
Stringクラスに非常に似ている他のメソッド(setメソッドを除く)のリストを次に示します-
Sr.No. | Method & Description |
---|---|
1 |
int capacity() 文字列バッファの現在の容量を返します。 |
2 |
char charAt(int index) index引数で示される、文字列バッファで現在表されているシーケンスの指定された文字が返されます。 |
3 |
void ensureCapacity(int minimumCapacity) バッファーの容量が少なくとも指定された最小値に等しくなるようにします。 |
4 |
void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) 文字は、この文字列バッファーからコピー先の文字配列dstにコピーされます。 |
5 |
int indexOf(String str) この文字列内で、指定された部分文字列が最初に現れるインデックスを返します。 |
6 |
int indexOf(String str, int fromIndex) 指定されたインデックスで始まる、指定された部分文字列の最初の出現のこの文字列内のインデックスを返します。 |
7 |
int lastIndexOf(String str) この文字列内で、指定された部分文字列の右端の出現のインデックスを返します。 |
8 |
int lastIndexOf(String str, int fromIndex) この文字列内で、指定された部分文字列が最後に出現したインデックスを返します。 |
9 |
int length() この文字列バッファーの長さ(文字数)を返します。 |
10 |
void setCharAt(int index, char ch) この文字列バッファの指定されたインデックスの文字はchに設定されます。 |
11 |
void setLength(int newLength) この文字列バッファの長さを設定します。 |
12 |
CharSequence subSequence(int start, int end) このシーケンスのサブシーケンスである新しい文字シーケンスを返します。 |
13 |
String substring(int start) このStringBufferに現在含まれている文字のサブシーケンスを含む新しい文字列を返します。 部分文字列は、指定されたインデックスから始まり、StringBufferの最後まで続きます。 |
14 |
String substring(int start, int end) このStringBufferに現在含まれている文字のサブシーケンスを含む新しい文字列を返します。 |
15 |
String toString() この文字列バッファ内のデータを表す文字列に変換します。 |