C#字串學習筆記
1. 首先連線較小的字串可以顯著提高操作效能,因為這樣可以使用告訴快取。例如,考慮下面的程式碼:
str = str + “.” + Environment.NewLine
首先連線較小的字串可以用到快取記憶體並提高連線操作效能:
str = str + (“.” + Environment.NewLine)
2. 在web開發中構造字串傳送到客戶端也是有講究的,考慮以下程式碼:
strHTML = “”;
strHTML = strHTML + “My name is:”;
strHTML = strHTML + Request.ServerVariables(“SERVER_NAME”);
strHTML = strHTML + “”;
Response.Write(strHTML);
這種連線方法容易理解,但效率低下,因為當宣告strHTML時系統無法瞭解它需要佔用多大的記憶體空間,僅當給變數賦值時,系統才知道分配多少記憶體空間,對於每一次附加的字串連線操作,系統必須分配更多的記憶體空間,然後複製字元,要知道記憶體的分配和複製非常耗時間和資源!上面的程式碼段潛在的開始了4個互不相連的記憶體分配過程,這並不困難,但由於這是web頁,對於每一次頁面請求都要如此,如果該web頁面每秒接收5個請求,則每秒會發生20次的記憶體分配和字元複製過程,天哪!
因此我們採用如下方式優化上述程式碼,將所有的字串片斷置入一個陣列,然後把這些字串片斷連線為一個字串:
string[] arrString = new String[3];
string strHTML;
arrString [0] = “”;
arrString [1] = “My name is:”;
arrString [2] = Request.ServerVariables(“SERVER_NAME”);
arrString [3] = “”;
strHTML = arrString[0] + arrString[1] + arrString[2] + arrString[3];
Response.Write(strHTML);
這樣就減少了記憶體分配次數和複製次數。你還費解嗎?
4. 如何分解句子到單詞:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-591952/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 字串學習筆記字串筆記
- 【學習筆記】字串匹配筆記字串匹配
- 字串家族 學習筆記字串筆記
- C#學習筆記C#筆記
- KMP字串匹配學習筆記KMP字串匹配筆記
- 學習筆記——字串方法整理筆記字串
- ruby 字串學習筆記1字串筆記
- ruby 字串學習筆記3字串筆記
- ruby字串學習筆記4字串筆記
- ruby字串學習筆記5字串筆記
- C#特性學習筆記C#筆記
- C#學習筆記2C#筆記
- c#學習筆記(一)C#筆記
- C/C++學習筆記:字串C++筆記字串
- 【C#學習筆記】Hello WorldC#筆記
- C#學習筆記(一) (轉)C#筆記
- 【Python學習】學習筆記 14-15 字串Python筆記字串
- Python學習筆記 - 字串,數字Python筆記字串
- Qt學習筆記(五)QString 字串QT筆記字串
- Python學習筆記-字串及操作Python筆記字串
- 我的C#學習筆記14C#筆記
- 我的C#學習筆記1C#筆記
- unity學習筆記-C#協程Unity筆記C#
- 【C#學習筆記】函式呼叫C#筆記函式
- 【C#學習筆記】陣列使用C#筆記陣列
- 【C#學習筆記】指標使用C#筆記指標
- 【C#學習筆記】改變字型C#筆記
- 【C#學習筆記】讀檔案C#筆記
- 【C#學習筆記】寫檔案C#筆記
- C#字串基礎學習C#字串
- 【C#學習筆記】結構體使用C#筆記結構體
- 【C#學習筆記】List容器使用C#筆記
- 【C#學習筆記】儲存檔案C#筆記
- 【C#學習筆記】Dictionary容器使用C#筆記
- 【C#學習筆記】函式過載C#筆記函式
- 【C#學習筆記】播放wav檔案C#筆記
- 【C#學習筆記】型別轉換C#筆記型別
- 【C#學習筆記】smtp發郵件C#筆記