C#的字串做連接的方式整理,使用的方式包括String Format、String Concat、String Builder等方式
以下整理幾種字串連接的方式
第一種 +
最常見的方式就是用+把字串加在一起
比如 "aa" + "bb"
出來的結果就會變成
aabb
當然也可以用 += 的方式來組成
EX:
var str = "aa";
str += "bb";
Console.WriteLine(str);
輸出的結果也會為 aabb
第二種 $ 字符串内插
在$符號的字串裡就可以加上 {} 並在裡面加入變數
Ex:
int num = 1 ;
var str = $"test{num}";
Console.WriteLine(str);
輸出結果為
test1
也可在括號裡面加入運算式
Ex:
var str = $"test{1+1}";
Console.WriteLine(str);
輸出結果為
test2
那如果要在$的字串裡加入{}的字串要怎麼做呢
Ex:
int num = 0 ;
str = $"{{num:{num}}}";
Console.WriteLine(str)
輸出結果就會變成
{ num:0}
假設今天想要在字串裡加入 " 符號 該怎麼做呢
其實只要把想加入的 " 符號加上一個反斜線 \ 就能達成了
Ex:
str = $" \"{num}\" ";
輸出的結果就會是
"0"
這個適用於一般字串 不需要加上$就可以達成了
第三種 String Format
今天假設有一個字串 裡面有許多地方需要插入變數, 但變數又不是在當下就有需要的值的時候,就可以使用string format
例如
Hello, My name is ATai, Today is Monday!
其中的名字跟星期幾 我希望能用變數來取代,就可以先把中間挖空,變成
var name = "ATai";
var date = DateTime.Now;
var helloWorld = "Hello, My name is {0}, Today is {1}!";
var str = String.Format(helloWorld, name, date.DayOfWeek);
Console.WriteLine(str);
輸出的字樣就會變成
Hello, My name is ATai, Today is Wednesday!
第四種 String Concat
如果今天需要串連的字串是為陣列的型態,想把他們組起來就可以使用 string.Concat
Ex
string[] strArray = { "The", "three", "little", "pigs", "are", "getting", "big." };
var str = string.Concat(strArray);
Console.WriteLine(str);
輸出的解果就會為
Thethreelittlepigsaregettingbig.
第五種 string.Join
剛剛在上面看到了 string.Concat 一定有發現到 我的字都連在一起了,但是我希望我在串起來的時候能用空格或是其他符號來代替,這時候就可以使用 string.Join了
string[] strArray = { "The", "three", "little", "pigs", "are", "getting", "big." };
var str = string.Join(" ", strArray);
Console.WriteLine(str);
輸出的結果就會為
The three little pigs are getting big.
其中的 " " 裡面可以用任何符號做代替,來達成自己需要的目的
第六種 StringBuilder
使用方式就像以下
var str = new StringBuilder();
str.Append("aa")
str.Append("bb")
Console.WriteLine(str);
輸出的結果就會為
aabb
關於 StringBuilder的使用情境 可以參考黑大的文 這邊就不詳細贅述
以上就是這次整理出來的C#字串連接方式,如果還有什麼其他方式歡迎提出來一起討論。
相關連結