ehh*_*ehh 1 .net c# linq string
我有以下代码:
var days = new string[] { "1", "2", "3", "4" });
Run Code Online (Sandbox Code Playgroud)
我需要将天数转换为字符串,如下所示:
string daysConverted = "'1','2','3','4'";
Run Code Online (Sandbox Code Playgroud)
我尝试使用string.Join:
var daysConverted = string.Join("','", days);
Run Code Online (Sandbox Code Playgroud)
但我得到了:
"1','2','3','4" // missing quotes at the beginning and at the end.
Run Code Online (Sandbox Code Playgroud)
我可以在两边连接一个引用,但我想知道是否有任何语法可以一次性完成.
您必须在结尾添加它并开始,因为它Join只会组合两个字符串.说到这一点,当你"1"和你的"2"一个表达者结合使用时,只需在两个元素之间添加分隔符.','"1','2"
截至MSDN:
使用每个元素之间的指定分隔符连接字符串数组的所有元素.
最后,下面的解决方案在内存和速度方面似乎是最好的,因为你有少量的字符串连接(两个用于开始和结束,一个用于每个元素 - > 2 + n).
var daysConverted = "'" + string.Join("','", days) + "'";
Run Code Online (Sandbox Code Playgroud)
你应该'在加入之前将字符串包装起来:
var result = String.Join(",", days.Select(s => "'" + s + "'"));
Run Code Online (Sandbox Code Playgroud)