我的应用程序中有一个可选的自定义前缀和后缀,我想添加到我的字符串列表中的每个项目。我已经尝试了以下所有内容,但没有一个正在运行。有人能指出我正确的方向吗?
List<string> myList = new List<string>{ "dog", "cat", "pig", "bird" };
string prefix = "my ";
string suffix = " sucks!";
StringBuilder sb = new StringBuilder();
sb.Append(suffix);
sb.Insert(0, prefix);
MyList = sb.ToString(); //This gives me red squigglies under sb.ToString();
我也尝试过:
myList = myList.Join(x => prefix + x + suffix).ToList(); //Red squigglies
和
sortBox1.Join(prefix + sortBox1 + suffix).ToList(); //Red squigglies
我在哪里错了?
答案 0 :(得分:25)
为什么你在这里使用StringBuilder
或者为什么要尝试加入,这并不是很清楚。这听起来像你想要的:
var suckingList = myList.Select(x => "my " + x + " sucks")
.ToList();
这是使用LINQ对列表中的每个项目执行投影的绝常常规方法。
答案 1 :(得分:2)
List<string> myList = new List<string>{ "dog", "cat", "pig", "bird" };
List<string> myNewList = new List<string>();
string prefix = "my ";
string suffix = " sucks!";
foreach(string s in myList)
{
myNewList.Add(string.Format("{0}{1}{2}", prefix, s, suffix);
}
myNewList现在包含正确的数据。