1. 程式人生 > 遊戲攻略 >《神佑釋放》各職業特點分析

《神佑釋放》各職業特點分析

StringBuffer和StringBuilder

String類的缺點:

String 是一個不可變的資料型別,每每拼接都會產生一個新的字串,那麼記憶體遲早會被這些拼接的字串塞滿。

String類和StringBuilder和StringBuffer類的區別:

StringBuilder和StringBuffer:可變的字串,不產生新物件,比較省記憶體,當進行大量的字串拼接時建議使用StringBuffer和StringBuilder,但它們兩個一些方法的實現幾乎跟String一樣。

StringBuffer和StringBuilder類:

【相似點】

兩者用法一模一樣,可以認為是一個類

【區別】

  1. StringBuffer執行緒安全,StringBuilder非執行緒安全。

  2. StringBuilder相比於StringBuffer有速度優勢,多數情況下建議使用StringBuilder類,但當被要求執行緒安全時必須使用StringBuilder類

StringBuffer和StringBuilder 轉成String類

StringBuilder sb = new StringBuilder("貓喜歡吃魚");
String s = sb.toString();		

【參考程式碼】

package String;

public class TestStringBuilder {
    public static void main(String[] args) {
        StringBuilder sb = new StringBuilder();// 一個空的字串""

        StringBuilder sb2 = new StringBuilder("貓喜歡吃魚");
        System.out.println(sb2);// 貓喜歡吃魚

        sb2.append(",狗也喜歡吃魚");
        System.out.println(sb2);// 追加  貓喜歡吃魚,狗也喜歡吃魚

        sb2.insert(1,"哈哈哈");
        System.out.println(sb2); //貓哈哈哈喜歡吃魚,狗也喜歡吃魚

        // 上述的操作huan'c

        // 把StringBuilder轉化成String
        String s = sb2.toString();
        System.out.println(s); //貓哈哈哈喜歡吃魚,狗也喜歡吃魚

        // 上述操作都可以將StringBuilder換成StringBuffer,結果一樣

    }
}