C#:
字符串拼接
How to (如何操作)
在C#中,连接字符串可以用加号(+
),String.Concat
,或者StringBuilder
。看例子:
// 使用加号连接字符串
string greeting = "你好, " + "世界!";
Console.WriteLine(greeting);
// 使用String.Concat
string name = String.Concat("我", "的", "名字", "是", "小", "明");
Console.WriteLine(name);
// 使用StringBuilder
StringBuilder sb = new StringBuilder();
sb.Append("学习");
sb.Append("编程");
sb.Append("真");
sb.Append("有趣!");
string sentence = sb.ToString();
Console.WriteLine(sentence);
输出:
你好, 世界!
我的名字是小明
学习编程真有趣!
Deep Dive (深入探讨)
历史上,字符串连接在编程早期不受重视,但随着时间,人们认识到其对性能的影响。C#早期版本与现在相比,字符串的连接方法有很大差异。比如+
连接在编译时会变成String.Concat
方法,但频繁使用时会导致性能问题。因此,大量的字符串操作推荐使用StringBuilder
,因为它内部使用字符数组,避免了不必要的字符串复制。
备选方案包括string.Join
和插值字符串$""
(从C# 6开始)。string.Join
可以连接字符串数组,插值字符串则提供了一种方便的方式来混合变量和字符串文字。
// string.Join 示例
var words = new[] {"加油,", "你", "可以", "做到"};
string encouragement = string.Join(" ", words);
Console.WriteLine(encouragement);
// 插值字符串 示例
string item = "书包";
int quantity = 3;
string message = $"我有{quantity}个{item}";
Console.WriteLine(message);
输出:
加油, 你 可以 做到
我有3个书包