首頁 >Java >java教程 >Java 中的 StringBuilder 類

Java 中的 StringBuilder 類

WBOY
WBOY原創
2024-08-30 16:01:37847瀏覽

StringBuilder類別是一個java類,它是String類別的替代品。正如 String 類別類似地建立可變字元序列一樣,StringBuilder 類別也建立可變字元序列。 StringBuilder 類別是使用字串的重要類別之一。它是在java 1.5中添加的,以提高效能。簡單地說,StringBuilder 類別用於建立可變字串。它與 StringBuffer 類別有所不同,例如它不保證同步。 StringBuilder類別不是同步的,因此在多執行緒的情況下不安全。 StringBuilder 類別實作比 StringBuffer 類別實作更快。

java中的StringBuilder類別是什麼?

StringBuilder類別由java.lang套件導入。 StringBuilder 類別擴展了 Object 類別以使用其屬性,而 Object 類別使用 Serialized 和 CharSequence。 StringBuilder 物件類似於 String 物件。建立 StringBuffer 類別是為了用作 StringBuffer 類別的直接替代品。 StringBuilder 類別的某些方法會傳回對其自身的參考。可以在單一語句中將多個操作套用為 StringBuilder 類別實例。這種在單一語句中進行操作的方式稱為方法鏈。

廣告 該類別中的熱門課程 JAVA 掌握 - 專業化 | 78 課程系列 | 15 次模擬測驗

文法:

public final class StringBuilder extends Object implements Serializable, CharSequence

字串產生器類別的建構子

StringBuilder 類別提供建構子及其參數來處理不同的字串。  

  • StringBuilder(): 不帶任何參數的 StringBuilder 建構子建立一個原本可以容納 16 個字元的字串產生器。
  • StringBuilder(int stringLength): 具有指定字串長度的 StringBuilder 建構子建立具有指定長度的字串產生器。
  • StringBuilder(String str):  具有指定字串的 StringBuilder 建構子會建立具有指定字串的字串產生器。

Java 中字串產生器類別的方法

StringBuilder 類別提供了一些處理字串的重要方法。

1.追加()

作為參數傳遞給append方法的字串將連接在應用append方法的字串之後。

代碼:

class StringBuilderExample{
//main method of class
public static void main(String args[]){
StringBuilder strSB = new StringBuilder("This is an example of ");
strSB.append("append method.");
System.out.println(strSB);
}
}

輸出:

Java 中的 StringBuilder 類

2.插入()

作為參數傳遞給插入方法的字串將插入到應用插入方法的字串的指定索引處(作為第一個參數傳遞)。

代碼:

class StringBuilderExample{
public static void main(String args[]){
StringBuilder strSB = new StringBuilder("This is a program");
strSB.insert(10, "java ");
System.out.println(strSB);
}
}

輸出:

Java 中的 StringBuilder 類

3.替換()

作為參數傳遞給替換方法的字串將替換位於起始索引和最後一個索引的字元之間的所有字元。第一個和最後一個索引作為替換方法中的第一個和第二個參數傳遞。

代碼:

class StringBuilderExample{
public static void main(String args[]){
StringBuilder strSB = new StringBuilder("This is a program");
strSB.replace(0, 9, "java");
System.out.println(strSB);
}
}

輸出:

Java 中的 StringBuilder 類

4.刪除()

delete() 將取代起始索引和最後索引字元之間的所有字元。第一個和最後一個索引作為 delete() 方法中的第一個和第二個參數傳遞。

代碼:

class StringBuilderExample{
public static void main(String args[]){
StringBuilder strSB = new StringBuilder("This is a program");
strSB.delete(0, 10);
System.out.println(strSB);
}
}

輸出:

Java 中的 StringBuilder 類

5.反轉()

reverse() 方法將反轉應用了reverse 方法的字串。

代碼:

class StringBuilderExample{
public static void main(String args[]){
StringBuilder strSB = new StringBuilder("This is a program");
strSB.reverse();
System.out.println(strSB);
}
}

輸出:

Java 中的 StringBuilder 類

6.容量()

StringBuilder 的預設容量為 16。建構器的容量可以透過 (capacity * n) + n 來增加。

代碼:

class StringBuilderExample{
public static void main(String args[]){
StringBuilder strSB = new StringBuilder();
System.out.println(strSB.capacity());
strSB.append("This is a program");
System.out.println(strSB.capacity());
}
}

輸出:

Java 中的 StringBuilder 類

7.長度()

length() 方法將傳回指定字串的長度。

代碼:

class StringBuilderExample{
public static void main(String args[]){
StringBuilder strSB = new StringBuilder("This is a java program");
System.out.println(strSB.length());
}
}

輸出:

Java 中的 StringBuilder 類

8.刪除CharAt()

deleteCharAt() 方法將刪除作為參數傳遞的指定索引處的字元。

代碼:

class StringBuilderExample{
public static void main(String args[]){
StringBuilder strSB = new StringBuilder("This is a java program");
strSB.deleteCharAt(6);
System.out.println(strSB);
}
}

輸出:

Java 中的 StringBuilder 類

9. setCharAt(int index, char ch)

setCharAt() method will set the specified char at the specified index passed as the first parameter while the second parameter will be the character.

Code:

class StringBuilderExample{
public static void main(String args[]){
StringBuilder strSB = new StringBuilder("This is a java program");
strSB.setCharAt(8, 'n');
System.out.println(strSB);
}
}

Output:

Java 中的 StringBuilder 類

10. indexOf()

This method returns the first position’s index in the string for the specified substring passed as a parameter.

Code:

class StringBuilderExample{
public static void main(String args[]){
StringBuilder strSB = new StringBuilder("This is a java program");
System.out.println(strSB.indexOf("java"));
}
}

Output:

Java 中的 StringBuilder 類

StringBuilder class also has some other methods to work with the string which are listed below setLength(), toString(), trimToSize(), substring() etc.

Conclusion

StringBuilder class has some important methods such as speed & capacity, which other classes don’t have. The use of the StringBuilder class makes manipulation of string much easier. It is a useful class to work with the strings in java. If a string is changing frequently & accessible by a single thread, in that case, StringBuilder is better than other classes like String & StringBuffer.

以上是Java 中的 StringBuilder 類的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn