簡體   English   中英

如何從網格顯示二維數組?

[英]How to display 2d array in grid from?

string userName = Console.ReadLine(); 


string[,] stats = new string[5,5];
stats[1,0] = "Name: ";
stats[1,1] = "userName";

我知道這可能不是最有效的處理方式,但我是新手,只是在玩C#。 我將如何顯示呢? 每次嘗試時,它總是將它們顯示在彼此的頂部。

使用for循環:

for (var i = 0; i < stats.GetLength(0); i++) {
  for (var j = 0; j < stats.GetLength(1); j++)
    Console.Write("{0} ", stats[i, j]);
  Console.WriteLine();
}

這是基於LINQ的解決方案:

string[,] stats = new string[3,3] {
  { "Name:", "userName", "some stat" },
  { "More stat:", "more", "more" },
  { "Even more:", "hey", "great" }
};
var lines = stats.Cast<string>()
                 .Select((v, i) => new { Idx = i, Val = v })
                 .GroupBy(x => x.Idx / stats.GetLength(1))
                 .Select(x => string.Join(" ", x.Select(y => y.Val)));
Console.WriteLine(string.Join(Environment.NewLine, lines));

版畫

名稱:userName一些統計

更多統計:更多

甚至更多:嘿,太好了

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM