First, this example program written in the C# language demonstrates the use of a three-dimensional array. You can declare and initialize the multidimensional array using the comma syntax.
Example You can loop over any 3D array using this example code. Adding levels to the for-loop allows it to handle greater dimensions.
Here We use an int[, ,] type—a three-dimensional integer array reference type.
Tip When using a multidimensional array, you should specify the dimension lengths on the array creation expression, not the type itself.
Int Array
Array
Also We access elements in a 2D or 3D array using the comma syntax in the array index. We read and write elements using this syntax.
C# program that uses three-dimensional array
using System;
class Program
{
static void Main()
{
// Create a three-dimensional array.
int[, ,] threeDimensional = new int[3, 5, 4];
threeDimensional[0, 0, 0] = 1;
threeDimensional[0, 1, 0] = 2;
threeDimensional[0, 2, 0] = 3;
threeDimensional[0, 3, 0] = 4;
threeDimensional[0, 4, 0] = 5;
threeDimensional[1, 1, 1] = 2;
threeDimensional[2, 2, 2] = 3;
threeDimensional[2, 2, 3] = 4;
// Loop over each dimension's length.
for (int i = 0; i < threeDimensional.
GetLength(2); i++)
{
for (int y = 0; y < threeDimensional.
GetLength(1); y++)
{
for (int x = 0; x < threeDimensional.
GetLength(0); x++)
{
Console.Write(threeDimensional[x, y, i]);
}
Console.WriteLine();
}
Console.WriteLine();
}
}
}
100
200
300
400
500
000
020
000
000
000
000
000
003
000
000
000
000
004
000
000
GetLength. This method is available on all constructed array types. To use the GetLength method, pass it one parameter. This parameter is the dimension of the array you want to check.
Tip A three-dimensional array has three allowed values. You can access the dimension 0, dimension 1 and dimension 2.
Unfortunately, in the C# language, two-dimensional arrays and all multi-dimensional arrays are slower than one-dimensional arrays when accessing elements. Instead, jagged arrays can be used.
Jagged Arrays
And The original version of this article printed out the 3D array in an incorrect way. Kenny Lindstrom wrote in with a correction.