菜单
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C# 多维数组


多维数组

在上一章中,您学习了数组,也称为一维数组。数组非常有用,您将在 C# 编程中大量使用它们。然而,如果您想以表格形式存储数据,例如带有行和列的表,您需要熟悉多维数组

多维数组基本上是数组的数组。

数组可以有任意数量的维度。最常见的是二维数组(2D)。


二维数组

要创建二维数组,请将每个数组放在其自己的花括号内,并在方括号内插入逗号(,)。

示例

int[,] numbers = { {1, 4, 2}, {3, 6, 8} };

好消息: 单个逗号 [,] 指定数组是二维的。三维数组将有两个逗号:int[,,]

numbers 现在是一个包含两个数组作为其元素的数组。第一个数组元素包含三个元素:1、4 和 2,而第二个数组元素包含 3、6 和 8。为了可视化,可以将其想象成一个带有行和列的表格。


访问二维数组的元素

要访问二维数组的元素,您必须指定两个索引:一个用于数组,一个用于该数组内的元素。或者,从表格可视化的角度来看;一个用于行,一个用于列(请参见下面的示例)。

此语句访问 numbers 数组中第一行(0)第三列(2)的元素值。

示例

int[,] numbers = { {1, 4, 2}, {3, 6, 8} };
Console.WriteLine(numbers[0, 2]);  // Outputs 2

自己动手试一试 »

请记住: 数组索引从 0 开始:[0] 是第一个元素,[1] 是第二个元素,以此类推。


更改二维数组的元素

您也可以更改元素的值。

以下示例将更改第一行(0)第一列(0)的元素值。

示例

int[,] numbers = { {1, 4, 2}, {3, 6, 8} };
numbers[0, 0] = 5;  // Change value to 5
Console.WriteLine(numbers[0, 0]); // Outputs 5 instead of 1

自己动手试一试 »


遍历二维数组

您可以使用 foreach 循环轻松遍历二维数组的元素。

示例

int[,] numbers = { {1, 4, 2}, {3, 6, 8} };

foreach (int i in numbers)
{
  Console.WriteLine(i);
} 

自己动手试一试 »

您也可以使用 for 循环。对于多维数组,您需要为数组的每个维度使用一个循环。

另请注意,我们必须使用 GetLength() 而不是 Length 来指定循环应运行多少次。

示例

int[,] numbers = { {1, 4, 2}, {3, 6, 8} };

for (int i = 0; i < numbers.GetLength(0); i++) 
{ 
  for (int j = 0; j < numbers.GetLength(1); j++) 
  { 
    Console.WriteLine(numbers[i, j]); 
  } 
}  

自己动手试一试 »


×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持