Введение в массивы в C #
Массив - это набор объектов. Элементы, представленные в массиве, имеют одинаковый тип данных. Это может быть int, float, char и т. Д. Концепция массивов в C # возникает, чтобы избежать громоздкого хранения различных значений путем создания различных переменных.
23 | 56 | 32 | 54 | 1 |
0 | 1 | 2 | 3 | 4 |
Индекс массива начинается с 0, и индекс массива будет увеличиваться в зависимости от конкретного размера массива. Если у нас есть массив длины 5, то массив будет начинаться с индекса 0 и заканчивается индексом 4. Таким образом, длина массива определяет количество элементов в этом массиве.
Как работает массив в C #?
В C # длина массива может быть фиксированной или динамической. В массиве фиксированной длины может храниться фиксированное количество элементов. В динамическом массиве размер увеличивается по мере поступления новых элементов в массив, так как выделение памяти для массива происходит динамически. В массивах стековая память хранит переменную массива, тогда как управляемая куча хранит элементы. В C # массив является производным от System. Массив класса. Если у нас есть целочисленный массив, то все элементы имеют свои соответствующие значения и, поскольку массив в C # является ссылочным типом, элементы будут содержать ссылку на фактические объекты.
Как создать массив в C #?
Синтаксис массива: data_type () name_of_array
1. Объявление массива
Код:
class Name
(
static void Main(string()args)
(
Int32() intarray; //array declaration
)
)
Объяснение кода: В объявлении Array первая часть представляет собой тип данных, который определяет тип объектов в массиве. Вторая часть - это (), которая определяет номер объекта в массиве, а затем следующая - это имя массива, в данном случае это массив int.
2. Инициализация массива
Код:
class Name
(
static void Main(string()args)
(
Int32() Intarray; //array declaration
Intarray = new Int32(4); // array initialization
Intarray(0)= 23; // assigning values to the elements
Intarray(1)=5;
Intarray(2)=88;
Intarray(3)=6;
)
)
Объяснение кода: При инициализации массива мы должны указать количество значений в массиве, используя квадратные скобки, и назначить эти значения каждому элементу массива. Таким образом, здесь intarray (0) означает, что мы присваиваем значение в первой позиции, intarray (1) означает присваивание значений во второй позиции и так далее.
3. Отображение значений массива
Код:
class Name
(
static void Main(string()args)
(
Int32() Intarray; //array declaration
Intarray = new Int32(4); //array initialization
Intarray(0)= 23; //assigning values to array
Intarray(1)=5;
Intarray(2)=88;
Intarray(3)=6;
Console.WriteLine(Intarray(0));
Console.WriteLine(Intarray(1));
Console.WriteLine(Intarray(2));
Console.WriteLine(Intarray(3));
Console.ReadKey();
)
)
Код Объяснение: Console.WriteLine - это метод для отображения каждого значения массива в консоли.
Примеры массивов
Примеры и результаты в C # отображаются ниже
Пример № 1
Код:
using System;
namespace ArrayDemo
(
class Name
(
static void Main(string() args)
(
Int32() Intarray; // array declaration
Intarray = new Int32(4); // array initialization
Intarray(0) = 23; // assigning values to the array element
Intarray(1) = 5;
Intarray(2) = 88;
Intarray(3) = 6;
Console.WriteLine(Intarray(0));
Console.WriteLine(Intarray(1));
Console.WriteLine(Intarray(2));
Console.WriteLine(Intarray(3));
Console.ReadKey();
)
)
)
В приведенном выше коде массив объявляется и инициализируется четырьмя элементами, а Console.WriteLine отображает все значения.
Выход:
Пример № 2
Код:
using System;
namespace Demo
(
class Array
(
static void Main(string() args)
(
int() arr = new int(4) ( 10, 20, 30, 40 );
for (int i = 0; i < arr.Length; i++) // Traverse array elements
(
Console.WriteLine(arr(i));
)
)
)
)
В приведенном выше коде массив инициализируется и объявляется с четырьмя элементами, а затем цикл используется для доступа к элементам массива.
Выход:
Пример № 3
Мы также можем использовать foreach для доступа к элементам массива.
Код:
using System;
namespace Demo
(
class Array
(
static void Main(string() args)
(
int() arr = new int(4) ( 10, 20, 30, 40 );
foreach (int i in arr)
(
Console.WriteLine(i);
)
)
)
)
Выход:
Типы массивов в C #
В C # у нас есть несколько типов массивов:
- Одноразмерный массив.
- Многомерный массив.
- Зубчатый массив.
Приведенные выше примеры относятся к массиву Single Dimension.
Многомерный массив
В прямоугольных или многомерных массивах данные хранятся в табличной форме
Int(, ) intArray = new int(4, 3)
В этом мы указали размер массива с четырьмя строками и тремя столбцами.
1. Объявление многомерных массивов
int(, ) array = new int(3, 3); //declaration of 2D array
int(,, ) array=new int(3, 3, 3); //declaration of 3D array
2. Инициализация многомерного массива
int(, ) array = new int(3, 3); //declaration of 2D array
array(0, 1)=10; //initialization
array(1, 2)=20;
array(2, 0)=30;
Пример многомерного массива
Код:
using System;
namespace Demo
(
class Array
(
public static void Main()
(
int(, ) intArray = new int(3, 2)(
(1, 2),
(2, 4),
(4, 8)
);
Console.WriteLine(intArray(0, 0));
Console.WriteLine(intArray(0, 1));
Console.WriteLine(intArray(1, 0));
Console.WriteLine(intArray(1, 1));
Console.WriteLine(intArray(2, 0));
Console.WriteLine(intArray(2, 1));
)
)
)
Объяснение кода: В приведенном выше коде строки и столбцы указаны с тремя строками и четырьмя столбцами, а Console.WriteLine отображает все значения.
Выход:
Зубчатый массив
Элементы зубчатых массивов являются «массивом», потому что он непосредственно хранит массив.
1. Объявление зубчатого массива
int()() array = new int(3)();
Первая скобка говорит о размере, а вторая - о размерах массива.
2. Инициализация и присвоение значений зубчатым массивам
array(0) = new int(4) ( 1, 2, 3, 4 );
array(1) = new int(5) ( 1, 2, 3, 4, 5 );
Размер элементов может быть разным.
Ниже приведены примеры зубчатого массива:
Пример № 1
Код:
using System;
namespace Demo
(
class Array
(
public static void Main()
(
int()() array = new int(2)();// Declare the array
array(0) = new int() ( 1, 2, 6, 8 );// Initialize the array
array(1) = new int() ( 72, 51, 47, 23, 54, 13 );
// Traverse array elements
for (int i = 0; i < array.Length; i++)
(
for (int j = 0; j < array(i).Length; j++)
(
System.Console.Write(array(i)(j) + " ");
)
System.Console.WriteLine();
)
)
)
)
Выход:
Пример № 2
Код:
using System;
namespace Demo
(
class Array
(
public static void Main()
(
int()() array = new int(3)()(
new int() ( 51, 22, 43, 87 ),
new int() ( 2, 3, 4, 56, 94, 23 ),
new int() ( 4, 5 )
);
// Traverse array elements
for (int i = 0; i < array.Length; i++)
(
for (int j = 0; j < array(i).Length; j++)
(
System.Console.Write(array(i)(j) + " ");
)
System.Console.WriteLine();
)
)
)
)
Выход :
Метод массива в C #
Следующие пункты заключаются в следующем:
- Очистить (Array, Int32, Int32) : этот метод используется для установки диапазона элементов по умолчанию в зависимости от типа элемента.
- Clone (): этот метод используется для создания копии элемента.
- Копировать (Array, Array, Int32): этот метод используется для копирования элементов одного массива в другой.
- Equals (Object): этот метод в основном проверяет, равен ли упомянутый объект текущему объекту.
- Sort (Array): этот метод используется для сортировки массива.
- CreateInstance (Type, Int32): этот метод используется для создания массива определенного типа, длины и размера.
- ToString (): используется для отображения строкового представления.
- GetType (): этот метод используется для возврата типа объекта.
- IndexOf (Array, Object): этот метод используется для поиска конкретного объекта и возврата индекса первого вхождения в одномерном массиве.
- Reverse (Array): этот метод используется для изменения последовательности элементов.
- SetValue (Object, Int32): этот метод в массиве 1D используется для установки значения элемента.
пример
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ArrayMethod
(
class Program
(
static void Main(string() args)
(
int() arr = new int(6) ( 5, 8, 9, 25, 0, 7 );
// Creating an empty array
int() arr2 = new int(6);
Console.WriteLine("length of first array: " + arr.Length); // length of array
Array.Sort(arr); //sorting array elements
Console.Write("Sorted array elements: ");
PrintArray(arr);
Array.Copy(arr, arr2, arr.Length); // copy elements of one array to other
Console.Write("Second array elements: ");
PrintArray(arr2);
Console.WriteLine("Get Index:\t(0)", Array.IndexOf(arr, 9)); // index of value
Array.Reverse(arr);
Console.Write("\nFirst Array elements in reverse order: "); // reverse the elements of array
PrintArray(arr);
Array.Clear(arr, 0, 6); //set default value of elements
PrintArray(arr);
)
static void PrintArray(int() arr)
(
foreach (int i in arr)
(
Console.Write("\t(0)", i);
)
Console.WriteLine("\n");
)
)
)
Объяснение кода: Приведенный выше код показывает несколько методов массива, в котором обр. Длина используется для получения длины, равной 6, массиву. Сортировка дает значения в отсортированном виде. Массив. Copy копирует значения из первого массива во второй массив. Массив. Обратное отображение массива в обратном порядке, тогда как Clear устанавливает значения элементов по умолчанию.
Выход:
Вывод
Поэтому лучше объявлять одну переменную массива, а не объявлять слишком много разных переменных, поскольку элементы в памяти хранятся последовательно, что ускоряет ее. Кроме того, легко перемещаться, манипулировать и сортировать данные с помощью массивов.
Рекомендуемые статьи
Это руководство по массивам в C #. Здесь мы обсудим, как создавать массивы в C #, типы массивов, методы и примеры. Вы также можете просмотреть другие наши статьи, чтобы узнать больше-
- Команды C #
- Функции C #
- Список C # против массива
- Массивы в C ++
- Многомерный массив в C
- Многомерный массив в Python
- Массивы в PHP
- Многомерные массивы в C ++ с примерами