Многомерные массивы
Концептуально, многомерный массив с двумя измерениями напоминает сетку. Многомерный массив с тремя измерениями напоминает куб.
// declare multidimension array (two dimensions)
int[,] array2D = new int[2,3];
// declare and initialize multidimension array
int[,] array2D2 = { {1, 2, 3}, {4, 5, 6} };
// write elements in a multidimensional array
for (int i=0; i<2; i++)
{
for (int j=0; j<3; j++)
{
array2D[i,j] = (i + 1) * (j + 1);
}
}
// read elements in a multidimensional array
for (int i=0; i<2; i++)
{
for (int j=0; j<3; j++)
{
System.Console.Write(array2D[i,j]);
}
System.Console.WriteLine();
}
Массивы массивов
Одним из вариантов многомерного массива является массив массивов. Массив массивов представляет собой одномерный массив, в котором каждый элемент является массивом. Элементы массива не обязаны иметь одинаковый размер.
Объявить массив массивов можно следующим образом
int[][] jaggedArray = new int[3][];
Создание массива трех массивов. Эти массивы можно инициализировать следующим образом
jaggedArray[0] = new int[5];
jaggedArray[1] = new int[4];
jaggedArray[2] = new int[2];
Using the foreach Statement
The foreach statement is often used to access each element stored in an array:
int[] numbers = { 4, 5, 6, 1, 2, 3, -2, -1, 0 }; foreach (int i in numbers) { System.Console.WriteLine(i); } |
Использование оператора foreach
Оператор foreach часто используется для доступа к каждому элементу, хранимому в массиве
int[] numbers = { 4, 5, 6, 1, 2, 3, -2, -1, 0 };
foreach (int i in numbers)
{
System.Console.Write("{0} ", i);
}
//Output: 4 5 6 1 2 3 -2 -1 0
Arrays of Objects
Creating an array of objects, rather than an array of simple data types such as integers, is a two-part process. First you declare the array, and then you must create the objects that are stored in the array. This example creates a class that defines an audio CD. It then creates an array that stores 20 audio CDs.
namespace CDCollection { // Define a CD type. class CD { private string album; private string artist; private int rating; public string Album { get {return album;} set {album = value;} } public string Artist { get {return artist;} set {artist = value;} } public int Rating { get {return rating;} set {rating = value;} } } class Program { static void Main(string[] args) { // Create the array to store the CDs. CD[] cdLibrary = new CD[20]; // Populate the CD library with CD objects. for (int i=0; i<20; i++) { cdLibrary[i] = new CD(); } // Assign details to the first album. cdLibrary[0].Album = "See"; cdLibrary[0].Artist = "The Sharp Band"; cdLibrary[0].Rating = 10; } }} |
Массивы объектов
Создание массива объектов в отличие от создания массива простых типов данных, например целочисленных, происходит в два этапа. Сначала необходимо объявить массив, а затем создать объекты для хранения в нем. В этом примере создается класс, определяющий аудио компакт-диск. Затем создается массив для хранения 20 аудио компакт-дисков.
namespace CDCollection{ // Define a CD type. class CD { private string album; private string artist; private int rating; public string Album { get {return album;} set {album = value;} } public string Artist { get {return artist;} set {artist = value;} } public int Rating { get {return rating;} set {rating = value;} } } class Program { static void Main(string[] args) { // Create the array to store the CDs. CD[] cdLibrary = new CD[20]; // Populate the CD library with CD objects. for (int i=0; i<20; i++) { cdLibrary[i] = new CD(); } // Assign details to the first album. cdLibrary[0].Album = "See"; cdLibrary[0].Artist = "The Sharp Band"; cdLibrary[0].Rating = 10; } }}How to: Declare an Array
This example shows three different ways to declare different kinds of arrays: single-dimensional, multidimensional, and jagged.
Example
// Single-dimensional arrays. int[] myArray1 = new int [5]; string[] myArray2 = new string[6]; // Multidimensional arrays. int[,] myArray3 = new int[4,2]; int[,,] myArray4 = new int [4,2,3]; // Jagged array (array of arrays) int[][] myArray5 = new int[3][]; |
Compiling the Code
Copy the code and paste it into the Main method of a console application.
Robust Programming
Make sure you initialize the elements of the jagged array before using it, as follows:
myArray5[0] = new int[7]; myArray5[1] = new int[5]; myArray5[2] = new int[2]; |
Объявление массива
В этом примере показано три различных способа объявления нескольких видов массивов: одномерного, многомерного и массива массивов.
Пример
// Single-dimensional arrays. int[] myArray1 = new int [5]; string[] myArray2 = new string[6]; // Multidimensional arrays. int[,] myArray3 = new int[4,2]; int[,,] myArray4 = new int [4,2,3]; // Jagged array (array of arrays) int[][] myArray5 = new int[3][]; |
Компиляция кода
Скопируйте код и вставьте его в метод Main консольного приложения.
Дата добавления: 2022-05-27; просмотров: 128;