C#ASP.NET for循环问题
在我的代码背后,我有一张名单……(特蕾西、米歇尔和蒂芙尼) 我有一个名为names的字符串,每个名称都被添加到该字符串中,但它显示如下(Tracy Michelle Tiffany) 在每个名字后面加逗号,在最后一个名字前面加上 这是我的一些代码C#ASP.NET for循环问题,c#,asp.net,loops,C#,Asp.net,Loops,在我的代码背后,我有一张名单……(特蕾西、米歇尔和蒂芙尼) 我有一个名为names的字符串,每个名称都被添加到该字符串中,但它显示如下(Tracy Michelle Tiffany) 在每个名字后面加逗号,在最后一个名字前面加上 这是我的一些代码 string names = ""; for(int i=0; i< GroupOfPeople.Count; i++) { GroupOfPeople nm = (GroupOfPeople) nm.
string names = "";
for(int i=0; i< GroupOfPeople.Count; i++)
{
GroupOfPeople nm = (GroupOfPeople) nm.GroupOfPeople[i];
names += nm.FirstName;
}
字符串名称=”;
for(int i=0;i
如果您使用.NET 4.0或更高版本,则可以使用字符串.Join
来获取IEnumerable
:
做点像
for(int i=0; i< GroupOfPeople.Count; i++)
{
GroupOfPeople nm = (GroupOfPeople) nm.GroupOfPeople[i];
if(i < GroupOfPeople.Count - 1)
names += nm.FirstName + ", ";
else
names += " and " + nm.FirstName;
}
for(inti=0;i
您是否尝试过名称+=”、“+nm.FirstName
?然后抛出一个if
条件,使其在姓氏之前加上一个”和“
”,而不会看到更多的代码string.Join()
(),并将您的姓名列表选择/投影到IEnumerable
var names = string.join(
", "
, GroupOfPeople.Cast<GroupOfPeople>().Select(nm => nm.FirstName)
); // ^^^^^^^^^^^^^^^^^^^^^^ The above cast may be unnecessary
for(int i=0; i< GroupOfPeople.Count; i++)
{
GroupOfPeople nm = (GroupOfPeople) nm.GroupOfPeople[i];
if(i < GroupOfPeople.Count - 1)
names += nm.FirstName + ", ";
else
names += " and " + nm.FirstName;
}