C# 使用foreach在二维数组中添加空间

C# 使用foreach在二维数组中添加空间,c#,C#,我希望生成的代码在every*之后有一个额外的空格,但是使用foreach方法,但我不确定我是否正确地做到了 using System; class MainClass { public static void Main (string[] args) { char [,] city = new char [10,10]; int rowLength = city.GetLength(0); int colLength = city.GetLength(1); string

我希望生成的代码在every*之后有一个额外的空格,但是使用foreach方法,但我不确定我是否正确地做到了

using System;

class MainClass {
  public static void Main (string[] args) {
  char [,] city = new char [10,10];
  int rowLength = city.GetLength(0);
  int colLength = city.GetLength(1);
  string output = "";
  for(int i = 0; i < rowLength; i++){
    for(int j = 0; j < colLength; j++){
      city[i,j] = '*';
      
      foreach (char val in city)
      output+= val+"\t";
      
      Console.Write("{0}",city[i,j]);
    }//end j
    Console.WriteLine();
  }//end i
  Console.WriteLine("done");
}
}
使用系统;
类主类{
公共静态void Main(字符串[]args){
字符[,]城市=新字符[10,10];
int rowLength=city.GetLength(0);
int colLength=city.GetLength(1);
字符串输出=”;
for(int i=0;i
但打印出来后不会添加标签。位置是否错误?

因此我不确定这是您正在寻找的确切解决方案,但您可以跳过foreach循环,只需将其添加到Write()中即可

class类main类
{
公共静态void Main(字符串[]args)
{
字符[,]城市=新字符[10,10];
int rowLength=city.GetLength(0);
int colLength=city.GetLength(1);
字符串输出=”;
for(int i=0;i
用于为相同的循环设置for循环。代替foreach的
。。如果您已经知道每个项目都是
*
,并且知道数组维度。然后你可以直接设置
输出
变量。把你的橡皮鸭拿出来,大声读出你的代码。对于每一行位置和每一列位置,将星号字符放入二维
city
数组,遍历整个
city
数组(其中一些元素已初始化,一些未初始化),并将每个元素和选项卡追加到
output
。完成后,您将忘记
输出
。我认为您想要的是在初始化
city[I,j]
之后完成循环的行和列。然后,初始化
city
后,为循环的行和列启动第二个集合,以输出
$“{city[i,j]}\t”
的内容。
        class MainClass
        {
            public static void Main(string[] args)
            {
                char[,] city = new char[10, 10];
                int rowLength = city.GetLength(0);
                int colLength = city.GetLength(1);
                string output = "";
                for (int i = 0; i < rowLength; i++)
                {
                    for (int j = 0; j < colLength; j++)
                    {
                        city[i, j] = '*';
        
                        //foreach (char val in city)
                            //output += val + "\t";
        
                        Console.Write("{0}", city[i, j] + "\t");
                    }//end j
                    Console.WriteLine();
                }//end i
                Console.WriteLine("done");
            }
        }