9

我的应用程序中有一个可选的自定义前缀和后缀,我想将它们添加到字符串列表中的每个项目中。我已经尝试了以下所有方法,但没有一个有效。有人可以指出我正确的方向吗?

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

我在哪里错了?

4

2 回答 2

36

目前还不清楚你为什么StringBuilder在这里使用 a ,或者你为什么要尝试加入。听起来你想要:

var suckingList = myList.Select(x => "my " + x + " sucks")
                        .ToList();

这是使用 LINQ 对列表中的每个项目执行投影的绝对正常方式。

于 2012-12-18T11:32:22.570 回答
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 现在包含正确的数据。

于 2012-12-18T11:35:17.750 回答