StringBffの使い方

4564 ワード

1、SteringBuffer対象の初期化
StringBufferオブジェクトの初期化は、String類の初期化と同じではなく、Javaが提供する特殊な文法であり、通常は構造法を用いて初期化される。
たとえば:
StringBuffer s = new StringBuffer();
このように初期化されたStringBufferの対象は空の対象です。私が犯したミスです。
コンテンツ付きのStringBufferオブジェクトを作成する必要がある場合、使用できます。
StringBuffer s = new StringBuffer(“abc”);
このように初期化されたStringBufferオブジェクトの内容は文字列"abc"である。
なお、StringBufferとStringは異なるタイプであり、直接的に強制タイプに変換することはできません。以下のコードはすべて間違っています。
StringBuffer s = “abc”; //       

StringBuffer s = (StringBuffer)”abc”; //       ,      

StringBuffer   StringString s = “abc”;

StringBuffer sb1 = new StringBuffer(“123”);

StringBuffer sb2 = new StringBuffer(s); //String   StringBuffer

String s1 = sb1.toString(); //StringBuffer   String
2、SteringBufferの常用方法
StringBuffer類の方法は主に文字列の変化に重点を置いています。例えば、追加、挿入、削除などもStringBufferとString類の主な違いです。
a、アプリの方法
public StringBuffer apend(bolean b)
この方法の役割は、現在のStringBufferオブジェクトの末尾にコンテンツを追加することであり、文字列の接続と同様である。この方法を起動すると、StringBufferオブジェクトの内容も変更されます。例えば、
StringBuffer sb = new StringBuffer(“abc”);

sb.append(true);
オブジェクトsbの値は「abctrue」になります。
この方法を用いて文字列の接続を行い、例えばデータベースSQL文に適用される接続など、Stringよりもコンテンツを節約する。
StringBuffer sb = new StringBuffer();

String user = “test”;

String pwd = “123”;

sb.append(“select * from userInfo where username=“)

.append(user)

.append(“ and pwd=”)

.append(pwd);
このようなオブジェクトsbの値は文字列「select*from userInfo where username=test and pwd=123」です。
b、deleteCharAt方法
public StringBuffer deleteCharAt(int index)
この方法は、指定された位置の文字を削除し、残りの内容を新しい文字列に形成する役割を果たします。たとえば:
StringBuffer sb = new StringBuffer(“Test”);

sb. deleteCharAt(1);
このコードの役割は、文字列オブジェクトsbのインデックス値が1の文字、つまり第2の文字を削除し、残りの内容は新しい文字列を構成します。したがって、オブジェクトsbの値は「Tt」になります。
同様の機能を有するdelete方法も存在する。
public Stering Buffer delete(int start,int end)
この方法の役割は、指定区間内のすべての文字を削除し、startを含み、endインデックス値の区間を含まないことです。たとえば:
StringBuffer sb = new StringBuffer(“TestString”);

sb. delete (1,4);
このコードの役割は、インデックス値1(含まれる)からインデックス値4(含まない)までのすべての文字を削除し、残りの文字は新しい文字列を形成することである。このオブジェクトsbの値は、「TString」である。
c、insertの方法
public StringBuffer insert(int offset、bolean b)
この方法の役割は、StringBufferオブジェクトにコンテンツを挿入し、新しい文字列を形成することである。たとえば:
StringBuffer sb = new StringBuffer(“TestString”);

sb.insert(4,false);
この例のコードの役割は、オブジェクトsbのインデックス値4の位置にfalse値を挿入し、新しい文字列を形成すると、実行後のオブジェクトsbの値は「Testfalse String」である。
d、逆転方法
public StringBuffer reverse()
この方法の役割は、StringBufferオブジェクト内のコンテンツを反転させ、新しい文字列を形成することである。たとえば:
StringBuffer sb = new StringBuffer(“abc”);

sb.reverse();
反転したら、対象sbの内容は「cba」になります。
e、set CharAt方法
public void set CharAt(int index,char ch)
この方法の役割は、オブジェクト内のインデックス値がindex位置の文字を新しい文字chに変更することです。たとえば:
StringBuffer sb = new StringBuffer(“abc”);

sb.setCharAt(1,’D’);
オブジェクトsbの値は「aDc」になります。
f、trimToSize方法
public void trimToSize()
この方法はStringBufferオブジェクトの中記憶空間を文字列の長さと同じ長さに縮小し、空間の無駄を減らす役割を果たしている。
つまり、実際に使う場合は、StringとStringBufferはそれぞれ長所と短所があり、具体的な使用環境に応じて、対応するタイプを選択して使用することができます。
注:上記の内容はhttp://www.cnblogs.com/liu-chao-feng/p/5636063.html;