[英]Merging strings together with separator berween them in C#
我需要將List<string>
中的字符串合並到 oneliner 中。 我想出了簡單的解決方案,但我不確定這是否是 go 的最佳方法。
第一個版本有問題,
在字符串開始:
string benchmarkiUjemneDatyRazem = "";
foreach (string s in benchmarkiUjemne) {
benchmarkiUjemneDatyRazem = benchmarkiUjemneDatyRazem + "," + s;
}
第二個版本(Linq power),但仍然帶有`:
string benchmarkiUjemneDatyRazem = benchmarkiUjemne.Aggregate("", (current, s) => current + "," + s);
沒有 的工作版本,
但是行數使以后閱讀它時有些痛苦:
int b = 0;
string benchmarkiUjemneDatyRazem = "";
foreach (string s in benchmarkiUjemne) {
if (b == 0) {
b = 1;
benchmarkiUjemneDatyRazem = s;
continue;
}
benchmarkiUjemneDatyRazem = benchmarkiUjemneDatyRazem + "," + s;
}
我想出的最終版本是基於 Linq 並替換為第一個字符:
string benchmarkiUjemneDatyRazem = benchmarkiUjemne.Aggregate("", (current, s) => current + "," + s).Substring(1);
這是解決這個問題的好方法嗎? 還是有更好的方法來實際做到這一點? 喜歡使用 StringBuilder 左右?
如果您使用.Net 4,則可以使用string.Join
(在早期版本中,這僅在benchmarkiUjemne
是string[]
時才有效):
string result = string.Join(",", benchmarkiUjemne);
如果這是 .Net 3.5 或更早版本,您仍然可以通過調用列表中的ToArray
來使用它:
string result = string.Join(",", benchmarkiUjemne.ToArray());
使用string.Join
:
var res = string.Join(",", benchmarkiUjemne);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.