21. 字符串 Split/StringBuilder
阿新 • • 發佈:2017-10-05
判斷字符串 字符 adk 位置 spl console pty 自定義變量 cnblogs
一、Split() 截取字符串數組
1 static void Main(string[] args) 2 { 3 //指定規則截取為一個字符串數組 4 string mystr = "同學們。大家。上午好!"; 5 string[] strArray = null; 6 strArray = mystr.Split(‘。‘); //“。”是字符數組的元素分隔符,由我們自由定義 7 //輸出字符串的長度為3; 8 Console.WriteLine("新的字符串長度 = " + strArray.Length); 9 10 for (int i = 0; i < strArray.Length; i++) 11 { 12 //分別輸出數組元素 13 Console.WriteLine(strArray[i]); 14 } 15 Console.ReadKey(); 16 }
二、判斷為空方法
1 class Program 2 { 3 //判斷字符串是否為空 4 public void JudgeIsNum(string str) 5 { 6 if (!string.IsNullOrEmpty(str)) 7 { 8 Console.WriteLine("輸入的字符串不為null,且不是空"); 9 } 10 else 11 { 12 Console.WriteLine("輸入的字符串為null 或者 空"); 13 } 14 } 15 static void Main(string[] args) 16 { 17 Program p = new Program(); 18 //如果有空格,則輸出"輸入的字符串不為null,且不是空" 19 p.JudgeIsNum(""); 20 Console.ReadKey(); 21 } 22 }
三、StringBuilder
String 對象是不可改變的。每次使用 System.String 類中的方法之一時,都要在內存中創建一個新的字符串對象,這就需要為該新對象分配新的空間。在需要對字符串執行重復修改的情況下,與創建新的 String 對象相關的系統開銷可能會非常昂貴。如果要修改字符串而不創建新的對象,則可以使用 System.Text.StringBuilder 類。
1 static void Main(string[] args) 2 { 3 StringBuilder mystrBd = new StringBuilder("helle world ! ");//初始化 4 5 //追加對應的字符串 6 Console.WriteLine(mystrBd.Append("What a beautiful day.")); 7 8 //該方法可以用來自定義變量的格式並將這些值追加到 StringBuilder 的後面 9 int i = 520; 10 Console.WriteLine(mystrBd.AppendFormat("我有{0:c}", i)); 11 12 //將字符串或對象添加到指定位置 13 Console.WriteLine(mystrBd.Insert(6, "beautiful ")); 14 15 //移除從索引開始位置的n個字符 16 Console.WriteLine(mystrBd.Remove(6, 10)); 17 18 //用一個指定的字符來替換StringBuilder對象內的字符 19 Console.WriteLine(mystrBd.Replace(‘!‘, ‘?‘)); 20 21 //自動換行 22 Console.WriteLine(mystrBd.AppendLine()); 23 Console.ReadKey(); 24 }
21. 字符串 Split/StringBuilder