Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Багатовимірні Масиви | Масиви
Основи C#

book
Багатовимірні Масиви

Масиви також можуть містити інші масиви всередині себе. Такі масиви називаються багатовимірними масивами. Вони корисні, коли потрібно зберігати дані у табличній формі — у вигляді рядків і стовпців, або у вигляді матриці.

Можна оголосити двовимірний масив за допомогою наступного синтаксису:

main.cs

main.cs

copy
datatype[][] arrayName = new datatype[lengthX, lengthY];
1
datatype[][] arrayName = new datatype[lengthX, lengthY];

Масив, створений за допомогою наведеного вище синтаксису, матиме довжину (розмір), що дорівнює lengthX, і кожен елемент буде масивом розміру lengthY:

main.cs

main.cs

copy
int[,] numbers = new int[3,3];
1
int[,] numbers = new int[3,3];

У наведеному вище випадку створюється нова двовимірна матриця розміром 3x3. Це означає, що вона може містити 9 цілих чисел. Ініціалізувати двовимірний масив можна за допомогою наступного синтаксису:

main.cs

main.cs

copy
datatype [,] arrayName = {
{ element1, element2, ... },
{ element1, element2, ...},
...
};
12345
datatype [,] arrayName = { { element1, element2, ... }, { element1, element2, ...}, ... };

Розгляньте приклад із реальними значеннями:

main.cs

main.cs

copy
using System;

namespace ConsoleApp
{
internal class Program
{
static void Main(string[] args)
{
int[,] numbers = {
{ 1, 2, 3, 4 },
{ 5, 6, 7, 8 },
{ 9, 10, 11, 12 }
};

// Displaying the array
foreach (int number in numbers)
{
Console.Write(number + " ");
}
}
}
}
12345678910111213141516171819202122
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; // Displaying the array foreach (int number in numbers) { Console.Write(number + " "); } } } }

Вищенаведене — це матриця розміром 3x4, яка може зберігати 12 елементів. Наступна ілюстрація показує матрицю 3x3 у візуалізованому вигляді:

Індексація у багатовимірних масивах подібна до звичайних масивів. Необхідно вказати індекс рядка та індекс стовпця.

main.cs

main.cs

copy
arrayName[row, column];
1
arrayName[row, column];

Наприклад, якщо потрібно отримати значення 6 з масиву numbers (як показано на ілюстрації), слід звернутися до другого рядка та третього стовпця:

main.cs

main.cs

copy
using System;

namespace ConsoleApp
{
internal class Program
{
static void Main(string[] args)
{
int[,] numbers = {
{ 1, 2, 3, 4 },
{ 5, 6, 7, 8 },
{ 9, 10, 11, 12 }
};

Console.WriteLine(numbers[1, 2]); // Output: 7
}
}
}
123456789101112131415161718
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; Console.WriteLine(numbers[1, 2]); // Output: 7 } } }

Можливі також багатовимірні масиви шляхом додавання додаткових ком у синтаксисі оголошення:

main.cs

main.cs

copy
int[,,] myArray3D = new int[3, 4, 5];
int[,,,] myArray4D = new int[5, 4, 9, 10];
// Similarly more complex ones are possible as well using the same pattern
123
int[,,] myArray3D = new int[3, 4, 5]; int[,,,] myArray4D = new int[5, 4, 9, 10]; // Similarly more complex ones are possible as well using the same pattern

У наведеному вище коді myArray3D міститиме 60 елементів (3x4x5), а myArray4D1800 елементів (5x4x9x10).

Нижче показано, як ініціалізувати тривимірний масив:

main.cs

main.cs

copy
int[,,] numbers =
{
{ {1, 2, 3}, { 4, 5, 6 }, {7, 8, 9} },
{ {10, 11, 12}, {13, 14, 15}, {16, 17, 18} },
{ {19, 20, 21}, {22, 23, 24}, {25, 26, 27} }
};
123456
int[,,] numbers = { { {1, 2, 3}, { 4, 5, 6 }, {7, 8, 9} }, { {10, 11, 12}, {13, 14, 15}, {16, 17, 18} }, { {19, 20, 21}, {22, 23, 24}, {25, 26, 27} } };
question mark

Який правильний код для доступу до елемента "Pumpkin" у масиві foods:

string[,] foods = {
{ "Apple", "Apricot", "Banana", "Grapes", "Lime" },
{ "Tomato", "Cabbage", "Carrot", "Pumpkin", "Broccoli" },
};

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 5. Розділ 5

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

We use cookies to make your experience better!
some-alt