Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
每次打印一次C#foreach_C#_For Loop_Foreach - Fatal编程技术网

每次打印一次C#foreach

每次打印一次C#foreach,c#,for-loop,foreach,C#,For Loop,Foreach,我被这个聪明的问题困住了。我找不到可定制的解决方案。 我正在尝试使用foreach打印我的列表列表。代码如下: int i = 0; StringBuilder sb = new StringBuilder(); foreach (var subList in result) { i++; Console.WriteLine(sb.Append("******\n").Append("Group ").Append(i).Append(" -

我被这个聪明的问题困住了。我找不到可定制的解决方案。 我正在尝试使用
foreach
打印我的
列表列表。代码如下:

int i = 0;
StringBuilder sb = new StringBuilder();
foreach (var subList in result)
{
 i++;
 Console.WriteLine(sb.Append("******\n").Append("Group ").Append(i).Append(" - ").
                    Append("Number of students: ").Append(subList.Count()).Append("\n").Append("   
               Name:").Append("\n"));
 var exp = subList.GetEnumerator();
 while (exp.MoveNext())
 {
  Console.WriteLine(sb.Append("         ").Append(exp.Current.ToString()).Append("\n"));
 }
}
我试图得到这个结果(例如):

等等。 问题是我总是得到这样的结果(每次都是从
foreach
打印):

像这样:

******
Group 1 - Number of students: 3
   Name:
******
Group 1 - Number of students: 3
   Name:
         this
******
Group 1 - Number of students: 3
   Name:
         this
         is
******
Group 1 - Number of students: 3
   Name:
         this
         is
         a
列表的其余部分依此类推。谁能指导我解决这个问题。
非常感谢您的帮助。

您不需要
控制台。每次调用
sb.Append
时,都需要使用WriteLine
。您需要完全构建字符串,然后一次全部打印出来

int i = 0;
StringBuilder sb = new StringBuilder();
foreach (var subList in result)
{
 i++;
 sb.Append("******\n")
   .Append("Group ")
   .Append(i)
   .Append(" - ")
   .Append("Number of students: ")
   .Append(subList.Count())
   .Append("\n")
   .Append("Name:")
   .Append("\n");

 foreach(var exp in subList)
 {
  sb.Append("         ").Append(exp.ToString()).Append("\n");
 }
}
Console.Write(sb.ToString());

您没有向我们展示
结果的样子,因此很难对您的代码形成意见。非常简单。谢谢
******
Group 1 - Number of students: 3
   Name:
******
Group 1 - Number of students: 3
   Name:
         this
******
Group 1 - Number of students: 3
   Name:
         this
         is
******
Group 1 - Number of students: 3
   Name:
         this
         is
         a
int i = 0;
StringBuilder sb = new StringBuilder();
foreach (var subList in result)
{
 i++;
 sb.Append("******\n")
   .Append("Group ")
   .Append(i)
   .Append(" - ")
   .Append("Number of students: ")
   .Append(subList.Count())
   .Append("\n")
   .Append("Name:")
   .Append("\n");

 foreach(var exp in subList)
 {
  sb.Append("         ").Append(exp.ToString()).Append("\n");
 }
}
Console.Write(sb.ToString());