JavaのStringBuffer:すべてのJava開発者が知っておくべき11の一般的なメソッド

公開: 2021-05-26

目次

JavaでのStringBufferの紹介

javaのStringBufferは、java.lang.Objectクラスからメソッドを継承するクラスです。 これは、変更可能または変更可能な文字列を作成するために使用される文字列のピアクラスです。 変更できることを除いて、Stringの機能の多くを提供します。つまり、不変で固定長の文字シーケンスではなく、書き込み可能で拡張可能な文字シーケンスを表します。 Javaのjava.lang.StringBufferに関するいくつかの重要なポイントは次のとおりです。

・文字シーケンスの内容と長さは、さまざまなメソッド呼び出しによって変更できます。

・スレッドセーフです。つまり、複数のスレッドで使用しても安全です。

・JavaのすべてのStringBufferには容量があります。

部分文字列と文字は、最後に追加することも、途中に挿入することもできます。 それは自動的に成長し、追加の余地を作ります。 多くの場合、成長の余地を残すために必要以上に多くのキャラクターが事前に割り当てられています。

JavaクラスのStringBufferの宣言方法は次のとおりです。

パブリックファイナルクラスStringBuffer

オブジェクトを拡張します

Serializable、CharSequenceを実装します

StringBufferクラスのコンストラクタ

1. StringBuffer() –これは、初期容量が16文字で、文字が含まれていない文字列バッファーを作成するために使用されます。 構文:

StringBuffer a = new StringBuffer();

2. StringBuffer(CharSequence seq) –これは、CharSequenceと同じ文字を含む文字列バッファーを構築するために使用されます。

3. StringBuffer(int capacity) –これは、初期容量が指定され、文字がない文字列バッファーを作成するために使用されます。 構文:

StringBuffer a = new StringBuffer(10);

4. StringBuffer(String str) –これは、指定された文字列コンテンツで文字列バッファを作成するために使用されます。 構文:

StringBuffer a = new StringBuffer( "stringbuffer in java");

読む:文字列バッファと文字列ビルダーの違い

11人気のある方法

1) Java Append()メソッドのStringBuffer

.append()は、指定された文字列と引数を連結するために使用されます。 次に例を示します。

java.io.*をインポートします。

パブリッククラスバッファ{

public static void main(String [] args)

{{

StringBuffer a = new StringBuffer(“ stringbuffer”);

a.append( "Javaで");

System.out.println(a);

a.append(0);

System.out.println(a);

}

}

出力:

2)Java Insert()メソッドのStringBuffer

.insert()メソッドは、指定された文字列を指定された位置にメイン文字列とともに挿入するために使用されます。 次に例を示します。

java.io.*をインポートします。

パブリッククラスバッファ{

public static void main(String [] args)

{{

StringBuffer a = new StringBuffer(“ stringbuffer”);

a.insert(5、“ for”);

System.out.println(a);

a.insert(0、5);

System.out.println(a);

a.insert(3、false);

System.out.println(a);

a.insert(5、41.55d);

System.out.println(a);

a.insert(8、41.55f);

System.out.println(a);

char arr [] = {'j'、'a'、'v'、'a'};

a.insert(2、arr);

System.out.println(a);

}}

出力:

また読む: Javaプロジェクトのアイデアとトピック

3)java replace()メソッドのStringBuffer

.replace()は、範囲(beginIndex、endIndex)で指定された文字列の一部を置き換えるために使用されます。 次に例を示します。

java.io.*をインポートします。

パブリッククラスバッファ{

public static void main(String [] args)

{{

StringBuffer a = new StringBuffer(“ stringbuffer”);

a.replace(5、8、“ are”);

System.out.println(a);

}

}

出力:

4)JavaのStringBuffer Delete()メソッド

.delete()は、範囲(beginIndex、endIndex)で指定された文字列を削除するために使用されます。

.deleteCharAt()は、特定のインデックスの文字を削除するために使用されます。 このメソッドは、結果の文字列バッファオブジェクトを返します。 次に例を示します。

java.io.*をインポートします。

パブリッククラスバッファ{

public static void main(String [] args)

{{

StringBuffer a = new StringBuffer( "Javaの文字列バッファ");

a.delete(0、6);

System.out.println(a);

a.deleteCharAt(7);

System.out.println(a);

}

}

出力:

5)Java Reverse()メソッドのStringBuffer

名前が示すように.reverse()は、指定された文字列を逆にするために使用されます。 次に例を示します。

java.io.*をインポートします。

パブリッククラスバッファ{

public static void main(String [] args)

{{

StringBuffer a = new StringBuffer(“ stringbuffer”);

a.reverse();

System.out.println(a);

}

}

出力:

6)Java Capacity()メソッドのStringBuffer

JavaクラスのStringBufferの.capacity()は、バッファの現在の容量を返すために使用されます。 デフォルトの容量は16です。 文字数を増やすと容量が増えます。 新しい容量=(古い容量* 2)+2。 つまり、現在の容量が16の場合、新しい容量は32 + 2=34になります。

.lengthは、JavaでStringBufferの長さを見つけるために使用されます。 例えば:

java.io.*をインポートします。

パブリッククラスバッファ{

public static void main(String [] args)

{{

StringBuffer a = new StringBuffer(“ stringbuffer”);

int p = a.length();

int q = a.capacity();

System.out.println(“文字列の長さは=” + p);

System.out.println(“文字列の容量は=” + q);

}

}

出力:

世界のトップ大学からソフトウェアエンジニアリングの学位をオンラインで取得します。 エグゼクティブPGプログラム、高度な証明書プログラム、または修士プログラムを取得して、キャリアを早急に進めましょう。

7)JavaのStringBufferensureCapacity()メソッド

stringbufferクラスの.ensureCapacity()は、指定された容量が現在の容量の最小値であることを確認するために使用されます。 指定された容量が現在の容量よりも大きい場合、新しい容量は(oldcapacity * 2)+2になります。 つまり、oldcapacityが16の場合、容量は34になります。例:

パブリッククラスバッファ{

public static void main(String args []){

StringBuffer a = new StringBuffer();

System.out.println(a.capacity());

a.append( "Hello");

System.out.println(a.capacity());

a.append(“ java”);

System.out.println(a.capacity());

a.ensureCapacity(10);

System.out.println(a.capacity());

a.ensureCapacity(50);

System.out.println(a.capacity());

}

}

出力:

チェックアウト:インドのJava開発者給与

8. charAt(int index) –このメソッドは、指定されたインデックスの文字を返すために使用されます。

9. substring(int begIndex) –このメソッドは、beginIndexから始まる特定の文字列のサブ文字列を返すために使用されます。

10. substring(int beginIndex、int endIndex) –このメソッドは、beginIndexで始まりendIndexで終わる指定された文字列のサブ文字列を返すために使用されます。

11. void TrimToSize() –このメソッドは、文字シーケンスのストレージスペースを削減するために使用されます

JavaでのStringとStringBufferの違い

この例を使用して、StringBufferおよびStringクラスのオブジェクトを作成し、それらを変更します。 StringBufferオブジェクトが変更されるのに対し、Stringは変更されないことがわかります。 以下の例を参照してください。

パブリッククラスバッファ{

public static void main(String args [])

{{

文字列str=“ string”;

str.concat( "バッファ");

System.out.println(str);

StringBuffer strB = new StringBuffer(“ string”);

strB.append( "buffer");

System.out.println(strB);

}

}

出力:

説明:ストリングは不変であるため、出力はそのようなものです。 文字列オブジェクトを連結しようとしても、変更されません。 ただし、JavaのStringBufferは可変オブジェクトを作成します。 したがって、変更することができます。

興味深い点

  1. Objectクラスを拡張します。
  2. Javaで実装されているStringBufferのインターフェースは、Appendable、Serializable、およびCharSequenceです。
  3. StringBufferのメソッドは、必要に応じて同期できます。 これは、すべての操作が、あるシリアル順序で発生するかのように動作することを意味します。
  4. ソースシーケンスに関連する操作が発生した場合、このクラスは、ソースではなく、動作している文字列バッファでのみ同期します。
  5. オブジェクトクラスから継承されるメソッドには、equals、clone、getClass、notify、notifyAll、hashCode、finalizeなどがあります。

結論

JavaのStringBufferは、変更可能な文字列オブジェクトを作成します。 したがって、StringBufferを使用して、文字または文字列のシーケンスを追加、置換、反転、連結、および変更できます。 StringBufferクラスのメソッドは、これらの関数に準拠しています。 要約すると、JavaのStringBufferは、複数のスレッドがStringBufferの内容を変更している場合にのみ使用されます。 文字列よりも高速です。

この記事では、 Java StringBufferの詳細をすべて学びました。Javaについてさらに学び、技術的なキャリアを積み上げたい場合は、インド最大のオンライン高等教育会社であるupGradのコースをご覧ください。

Java、フルスタックソフトウェア開発の詳細に興味がある場合は、upGrad&IIIT-Bのソフトウェア開発のエグゼクティブPGプログラム–フルスタック開発の専門分野をチェックしてください。これは、働く専門家向けに設計されており、500時間以上の厳格なトレーニングを提供します。 、9以上のプロジェクト、および割り当て、IIIT-B卒業生のステータス、実践的な実践的なキャップストーンプロジェクト、およびトップ企業との雇用支援。

あなたの夢の仕事に着陸

ソフトウェアエンジニアリングにおけるupGradのジョブリンクPG認定を申請する