c#中如何传递字符串.字符串列表中的空

本文关键字:字符串 列表 何传递 | 更新日期: 2023-09-27 18:10:31

我有一个字符串列表

Emails = new List<string>() { "R.Dun@domain.co.nz", "S.Dun@domain.co.nz" }

现在我想把string.empty传递给列表

的第一个值

之类的
policy.Emails = new List<string>(){string.Empty};

如何设置循环,例如,为list的每个值做一些事情。

c#中如何传递字符串.字符串列表中的空

可以直接将第一个元素设置为string。空:

policy.Emails[0]=string.Empty;

您可以使用indexof函数在列表中查找字符串,如下所示:

List<string> strList = new List<string>() { "R.Dun@domain.co.nz", "S.Dun@domain.co.nz" };
int fIndex = strList.IndexOf("R.Dun@domain.co.nz");
if(fIndex != -1)
    strList[fIndex] = string.Empty;

或者您想用string替换第一项。如dasblinkenlight所述,可以直接使用索引

strList[0] = string.Empty

希望能有所帮助。

您可以使用concat:

string.Empty添加到现有列表中。
var emails = new List<string> {"R.Dun@domain.co.nz", "S.Dun@domain.co.nz"};
policy.Emails = new[] {string.Empty}.Concat(emails).ToList();

现在policy.Emails看起来像这样:

{"", "R.Dun@domain.co.nz", "S.Dun@domain.co.nz"}

如果您想替换第一项,请在连接之前使用Skip(1):

policy.Emails = new[] {string.Empty}.Concat(emails.Skip(1)).ToList();

概括地说,用空字符串替换初始n值看起来像这样:

policy.Emails = Enumerable.Repeat(string.Empty, 1).Concat(emails.Skip(n)).ToList();

注意:不用说,如果您不介意修改列表,最简单的解决方案是执行

emails[0] = string.Empty;

如果你想在列表的开头添加一个空字符串,你可以这样做:

emails.Insert(0, string.Empty);