常用類庫 StringBuffer類

2021-09-07 06:55:28 字數 2963 閱讀 8613

掌握目標:

1,掌握stringbuffer與string的區別。

2,掌握stringbuffer常用方法。

3,掌握stringbuffer實際應用。

stringbuffer是使用緩衝區的,本身也是操作字串的,但是與string類不同,string類的內容一旦宣告則不可改變,改變的只是位址指向。而stringbuffer是可以改變的

對於stringbuffer而言,本身是乙個具體的操作類,所以不能像string類那樣直接賦值的方式進行物件例項化,必須通過構造方法完成。

};結果:

hello world!!!

數字 = 1

字元 = c

布林 = true

繼續驗證stringbuffer內容是可以修改的,通過引用傳遞的方式完成。

package

thread1;

public

class

demo1

public

static

void fun(stringbuffer s)

};

允許結果:

hello mldn lixinghua
從以上**證明stringbuffer是可以改變的。

可以直接使用insert()方法新增內容: public stringbuffer insert(int offset,boolean  b);

package

thread1;

public

class

demo1

};

執行結果:

hello world!!hello world!!mldn~
在stringbuffer中與stirng類非處相似的是,都可以使用length()方法求出字串長度

直接使用reverse()方法可以完成反轉功能,public stringbuffer reverse()。

public

class

stringbufferdemo04

};

執行結果:

!!dlrow olleh
對於上文紅色部分,有兩種方式:

一:講內容反轉後,轉換成string型別,賦值給string型別的字串。

string str = buf.reverse().tostring() ;

二,講內容反轉後,賦值給stringbuffer型別的物件。

stringbuffer str = buf.reverse() ;

在stringbuffer中也存在replace()方法,也可以使用此方法對指定內容替換。

public stringbuffer replace(int start,int end,string str);

public

class

stringbufferdemo05

};

執行結果:

內容替換之後的結果:hello lixinghua!!
通過substring()直接從stringbuffer 中指定範圍內擷取內容。public stringsubstring(int start,int end)

package

thread1;

public

class

demo1

};

執行結果:

內容替換之後的結果:lixinghua
因為stringbuffer的內容是可以修改的,所以可以用delet()刪除指定範圍內容:public string delete(int start,int end)

package

thread1;

public

class

demo1

};

執行結果:

刪除之後的結果:hello !!
在string中,可以使用indexof()方法進行查詢,在stringbuffer中可以繼續使用這個方法。此方法如果找到了,返回位置,否則返回-1

public

class

stringbufferdemo08else}};

執行結果:

可以查詢到指定的內容,位置在第6
以上的方法對於string類也是存在的,使用的時候可以根據doc文件檢視即可。

觀察以下**,咱們之前已經在string中介紹過了。

public

class

stringbufferdemo09

system.out.println(str1) ;}};

以上操作方法因為頻繁修改字串的內容,所以使用string是不合理的,最好的做法是使用stringbuffer。

public

class

stringbufferdemo10

system.out.println(buf) ;}};

對於stringbuffer而言,在頻繁修改字串的時候,效能更高。

凡是要頻繁修改字串內容的時候,都要使用stringbuffer完成,而且stringbuffer也提供了一些string類沒有的方法,比如delete(),insert()。

Java中的常用類 StringBuffer

stringbuffer類概述執行緒安全的可變字串行。乙個類似於 string 的字串緩衝區,但不能修改。雖然在任意時間點上它都包含某種特定的字串行,但通過某些方法呼叫可以改變該序列的長度和內容。從 jdk 5 開始,為該類補充了乙個 單個執行緒使用的等價類 即 stringbuilde r。與該類...

核心類庫 常用類庫

math類 math.abs 傳入引數的絕對值 math.max min 比較傳入的多個引數的最大 最小值 math.random 初始值是隨機生成0 1之間的double型別的正值 math.round 對傳入的float double值四捨五入 math.floor 返回值小於或等於傳入的數字的...

常用類庫 System類

system類包含幾個有用的類字段和方法。它無法例項化。system類提供的設施包括標準輸入,標準輸出和錯誤輸出流 訪問外部定義的屬性和環境變數 載入檔案和庫的方法 以及用於快速複製陣列的一部分的實用方法。system.out.println system.out.print scanner sc ...