【stringbuilder類】
命名空間為:system.text;
stringbuilder str2 = new stringbuilder(" ");//宣告乙個空的stringbuilder類的變數
stringbuilder str1 = new stringbuilder("(),(),(),2、4、6、7、8");
console.writeline(str1);
str1.remove(0, 9);
str1.insert(0, "(門前大橋下),(游過一群鴨),(快來快來數一數),");
console.writeline(str1);
console.readline();
【string類與stringbuilder類的比較】
string類建立物件,改變物件的值,是在堆裡面定義了另乙個物件,如果無數次改變物件的值,那麼就會在堆裡面建立無數個物件;
stringbuilder類建立乙個物件,就可以直接改變這個物件的值,堆裡面永遠只有這乙個物件;
很顯然在執行多次操作時,stringbuilder類的效率更高且消耗更小。
舉個例子:
string str1 = ""; //宣告乙個空的string型別變數
long starttime = datetime.now.millisecond; //記錄開始時間,毫秒級
for(int i=0;i<10000;i++)
long endtime = datetime.now.millisecond; //記錄結束時間
long time = endtime - starttime;
stringbuilder str2 = new stringbuilder(""); //宣告空的stringbuilder型別變數
starttime = datetime.now.millisecond;
for(int i=0;i<10000;i++)
endtime = datetime.now.millisecond;
time = endtime - starttime;
console.readline();
結果是:
很顯然看出stringbuilder類只消耗了3毫秒。
/僅作為本人學習筆記/
C 從入門到精通 第5章 字元與字串(2)
擷取字串 使用substring方法。string strb stra.substring 1,4 string strc stra.substring 1,stra.indexof 載 console.readline 分割字串 使用split方法。分割的符號有多種的情況 string stra ...
Android從入門到精通第12章 執行緒與訊息處理
建立執行緒 thread.start thread.sleep 1000 thread.interrupt handler訊息傳遞機制 在新建立的執行緒中操作ui介面。迴圈者looper簡介 android中,乙個執行緒對應乙個looper物件,而乙個looper物件又對應乙個messagequeu...
Go語言從入門到精通 字元型別
字串中的每乙個元素叫做 字元 在遍歷或者單個獲取字串元素時可以獲得字元。go 語言的字元有以下兩種 使用 fmt.printf 中的 t動詞可以輸出變數的實際型別,使用這個方法可以檢視 byte 和 rune 的本來型別,如下 var a byte a fmt.printf d t n a,a va...