Поскольку это абстрактный базовый класс, прямое создание экземпляра класса System.Array невозможно. Вместо этого мы можем создать экземпляры одного из классов, производных от System.Array. Все типы массивов в C# основаны на System.Array.
В дополнение к одномерным массивам в C# также есть многомерные массивы и зубчатые массивы. Многомерный массив имеет несколько или более измерений. В зубчатом массиве каждый элемент может быть массивом разных размеров. Проще говоря, зубчатый массив — это массив массивов.
Для чего используется класс System.Array
Класс System.Array предоставляет различные методы и свойства для работы с массивами в C#. Эти методы позволяют нам читать и изменять значения, хранящиеся в массиве, получать информацию о размере и форме массива и искать элементы в массиве.
Некоторые распространенные методы включают GetValue(), SetValue(), GetLength() и IndexOf(). Система.Массив class также позволяет нам сортировать, искать и манипулировать различными массивами.
Например, чтобы получить длину массива, Свойство длины используется. Свойство ранга может возвращать общие размеры, присутствующие в массиве. Свойство GetLength дает длину определенного измерения в многомерном массиве.
Методы и свойства в System.Array C#
Вот несколько методов и свойств, используемых в System.Array C#:
Прозрачный(): Это общедоступный метод, к которому можно получить доступ из любой части кода. Этот метод может установить для определенного диапазона элементов в массиве нулевую ссылку или нуль.
Копировать(): Это общедоступный общий метод, который можно перегрузить и использовать для копирования определенного раздела элементов из одного массива в другой массив.
Получитьдлину(): Он возвращает 32-битное целое число, которое показывает общее количество элементов в определенном измерении массива.
Получитьдлиннуюдлину(): Этот метод возвращает 64-битное целое число, которое дает нам общее количество элементов в определенном измерении массива.
Получитьнижнюю границу(): Этот метод извлекает нижнюю границу определенного измерения массива, начиная с индекса 0.
ПолучитьВерхнююГраницу(): Этот метод извлекает верхнюю границу указанного измерения массива, начиная с индекса 0.
ПолучитьЗначение(): Этот метод извлекает значение определенного элемента в массиве, начиная с индекса 1.
Индекс чего-либо(): Это общедоступный общий метод, который можно перегрузить для возврата индекса или смещения первого вхождения определенного значения в одномерном массиве.
ФиксированныйРазмер(): Этот метод сообщает, имеет ли массив фиксированный размер или нет.
ТолькоЧитать(): Метод возвращает значение, указывающее, доступен ли массив только для чтения или нет.
ЛастИндексОф(): Это общедоступный общий метод, который можно перегружать. Он дает индекс последнего вхождения значения в одномерный массив.
Длина(): Этот метод дает длину массивов. Это общедоступное свойство, которое выводит 32-битное целое число.
Большая длина(): Этот метод сообщает элементы во всех измерениях массива. Он возвращает 64-битное целочисленное значение.
Классифицировать(): Этот метод возвращает количество измерений, которые имеет массив.
Изменить размер(): Этот метод изменяет размер массива до указанного количества элементов.
Обеспечить регресс(): Этот метод может изменить порядок элементов в одномерном массиве.
Сортировать(): Этот метод упорядочивает элементы одномерного массива в порядке возрастания или убывания в зависимости от их значений.
Пример кода
Приведенный ниже код инициализирует массив целых чисел и демонстрирует различные Система.Массив методы, которые можно использовать с массивами в C#. Вывод каждого метода отображается отдельно на консоли.
используя систему ;программа класса
{
статический пустота Основной ( нить [ ] аргументы )
{
// Инициализировать массив целых чисел
инт [ ] числа '=' { 1 , 2 , 3 , 4 , 5 } ;
// Очистить содержимое массива
Множество. Прозрачный ( числа , 0 , числа. Длина ) ;
Консоль. WriteLine ( 'Массив после очистки:' ) ;
для ( инт я '=' 0 ; я < числа. Длина ; я ++ )
{
Консоль. Писать ( числа [ я ] + ' ' ) ;
}
Консоль. WriteLine ( ) ;
// Копируем содержимое другого массива в nums
инт [ ] numsКопировать '=' { 7 , 8 , 9 } ;
Множество. Копировать ( numsКопировать , числа , numsCopy. Длина ) ;
Консоль. WriteLine ( 'Массив после копирования:' ) ;
для ( инт я '=' 0 ; я < числа. Длина ; я ++ )
{
Консоль. Писать ( числа [ я ] + ' ' ) ;
}
Консоль. WriteLine ( ) ;
// Получить длину и большую длину массива
инт длина '=' числа. Получитьдлину ( 0 ) ;
длинный Большая длина '=' числа. GetLongLength ( 0 ) ;
Консоль. WriteLine ( 'Длина массива:' + длина ) ;
Консоль. WriteLine ( 'Длинная длина массива:' + Большая длина ) ;
// Получаем нижнюю и верхнюю границы массива
инт нижняя граница '=' числа. GetLowerBound ( 0 ) ;
инт верхняя граница '=' числа. GetUpperBound ( 0 ) ;
Консоль. WriteLine ( 'Нижняя граница массива:' + нижняя граница ) ;
Консоль. WriteLine ( 'Верхняя граница массива:' + верхняя граница ) ;
// Получить значение по определенному индексу в массиве
инт значение в индексе '=' ( инт ) числа. получить значение ( 1 ) ;
Консоль. WriteLine ( 'Значение по индексу 1:' + значение в индексе ) ;
// Находим индекс определенного значения в массиве
инт индексофвалуе '=' Множество. Индекс ( числа , 9 ) ;
Консоль. WriteLine ( 'Индекс значения 9:' + индексофвалуе ) ;
// Проверяем, имеет ли массив фиксированный размер и доступен ли он только для чтения
bool isFixedSize '=' числа. Исфикседсизе ;
логическое значение только для чтения '=' числа. IsReadOnly ;
Консоль. WriteLine ( 'Фиксированный размер?' + isFixedSize ) ;
Консоль. WriteLine ( 'Только для чтения?' + isReadOnly ) ;
// Находим последний индекс определенного значения в массиве
инт ластиндексофвалуе '=' Множество. ЛастИндексОф ( числа , 9 ) ;
Консоль. WriteLine ( 'Последний индекс значения 9:' + ластиндексофвалуе ) ;
// Получаем длину массива
инт длинаСнова '=' числа. Длина ;
Консоль. WriteLine ( 'Длина массива еще раз:' + длинаСнова ) ;
// Получить ранг массива
инт классифицировать '=' числа. Классифицировать ;
Консоль. WriteLine ( 'Ранг массива: ' + классифицировать ) ;
// Изменяем размер массива
Множество. Изменить размер ( ссылочные номера , 10 ) ;
// Переворачиваем содержимое массива
Множество. Обеспечить регресс ( числа ) ;
Консоль. WriteLine ( 'Массив после реверсирования:' ) ;
для ( инт я '=' 0 ; я < числа. Длина ; я ++ )
{
Консоль. Писать ( числа [ я ] + ' ' ) ;
}
Консоль. WriteLine ( ) ;
// Сортируем содержимое массива
Множество. Сортировать ( числа ) ;
Консоль. WriteLine ( 'Массив после сортировки:' ) ;
для ( инт я '=' 0 ; я < числа. Длина ; я ++ )
{
Консоль. Писать ( числа [ я ] + ' ' ) ;
}
}
}
Выход
Заключение
Класс System.Array в C# обеспечивает основу для работы с массивами всех типов. Независимо от того, нужно ли нам создать простой одномерный массив или сложный многомерный массив, класс System.Array предоставляет различные методы для эффективного управления данными и работы с ними. Подробное описание System.Array в C# читайте в статье.