С# Массивы
Массивы C#
В этом уроке мы узнаем о массивах C#. Мы научимся создавать, инициализировать и обращаться к массиву с помощью примеров.
Массив – это набор данных похожих типов. Например,
Допустим, нам нужно записать возраст 5 учеников. Вместо создания 5 отдельных переменных мы можем просто создать массив:
<рисунок>
<час> 1. Объявление массива C#
Вот как мы можем объявить массив в C#.
datatype[] arrayName; Здесь
dataType- тип данных, напримерint,string,charи т. д.arrayName- это идентификатор
Давайте посмотрим на пример,
int[] age; Здесь мы создали массив с именем age. . Он может хранить элементы int тип.
Но сколько элементов он может хранить?
Чтобы определить количество элементов, которые может содержать массив, мы должны выделить память для массива в C#. Например,
// declare an array
int[] age;
// allocate memory for array
age = new int[5]; Здесь new int[5] означает, что массив может хранить 5 элементов. Мы также можем сказать, что размер/длина массива равна 5.
Примечание :мы также можем объявить и выделить память массива в одной строке. Например,
int[] age = new int[5]; <час> 2. Инициализация массива в C#
В C# мы можем инициализировать массив во время объявления. Например,
int [] numbers = {1, 2, 3, 4, 5}; Здесь мы создали массив с именем numbers и инициализировали его значениями 1. , 2 , 3 , 4 и 5 внутри фигурных скобок.
Обратите внимание, что мы не указали размер массива. В этом случае C# автоматически указывает размер, подсчитывая количество элементов в массиве (т. е. 5).
В массиве мы используем номер индекса. для определения позиции каждого элемента массива. Мы можем использовать номер индекса для инициализации массива в C#. Например,
// declare an array
int[] age = new int[5];
//initializing array
age[0] = 12;
age[1] = 4;
age[2] = 5;
... <рисунок>
Примечание :
- Индекс массива всегда начинается с 0. То есть первый элемент массива имеет индекс 0.
- Если размер массива равен 5, индекс последнего элемента будет равен 4 (5 - 1).
3. Доступ к элементам массива
Мы можем получить доступ к элементам в массиве, используя индекс массива. Например,
// access element at index 2
array[2];
// access element at index 4
array[4]; Здесь
array[2]- доступ к 3-му элементуarray[4]- доступ к 5-му элементу
Пример:массив C#
using System;
namespace AccessArray {
class Program {
static void Main(string[] args) {
// create an array
int[] numbers = {1, 2, 3};
//access first element
Console.WriteLine("Element in first index : " + numbers[0]);
//access second element
Console.WriteLine("Element in second index : " + numbers[1]);
//access third element
Console.WriteLine("Element in third index : " + numbers[2]);
Console.ReadLine();
}
}
} Вывод
Element in first index : 1 Element in second index : 2 Element in third index : 3
В приведенном выше примере мы создали массив с именем numbers. с элементами 1, 2, 3 . Здесь мы используем номер индекса для доступа к элементам массива.
numbers[0]- доступ к первому элементу, 1numbers[1]- доступ ко второму элементу, 2numbers[3]- доступ к третьему элементу, 3
4. Изменить элементы массива
Мы также можем изменить элементы массива. Чтобы изменить элемент, мы просто присваиваем новое значение этому конкретному индексу. Например,
using System;
namespace ChangeArray {
class Program {
static void Main(string[] args) {
// create an array
int[] numbers = {1, 2, 3};
Console.WriteLine("Old Value at index 0: " + numbers[0]);
// change the value at index 0
numbers[0] = 11;
//print new value
Console.WriteLine("New Value at index 0: " + numbers[0]);
Console.ReadLine();
}
}
} Вывод
Old Value at index 0: 1 New Value at index 0: 11
В приведенном выше примере начальное значение с индексом 0 равно 1. Обратите внимание на строку
//change the value at index 0
numbers[0] = 11; Здесь мы присваиваем новое значение 11. на индекс 0. Теперь значение индекса 0 изменено с 1 до 11 .
<час>5. Итерация массива C# с использованием циклов
В C# мы можем использовать циклы для перебора каждого элемента массива. Например,
Пример:использование цикла for
using System;
namespace AccessArrayFor {
class Program {
static void Main(string[] args) {
int[] numbers = { 1, 2, 3};
for(int i=0; i < numbers.Length; i++) {
Console.WriteLine("Element in index " + i + ": " + numbers[i]);
}
Console.ReadLine();
}
}
} Вывод
Element in index 0: 1 Element in index 1: 2 Element in index 2: 3
В приведенном выше примере мы использовали цикл for для перебора элементов массива numbers. . Обратите внимание на строку,
numbers.Length Здесь Length свойство массива дает размер массива.
Мы также можем использовать цикл foreach для перебора элементов массива. Например,
Пример:использование цикла foreach
using System;
namespace AccessArrayForeach {
class Program {
static void Main(string[] args) {
int[] numbers = {1, 2, 3};
Console.WriteLine("Array Elements: ");
foreach(int num in numbers) {
Console.WriteLine(num);
}
Console.ReadLine();
}
}
} Вывод
Array Elements: 1 2 3<час>
6. Операции с массивами C# с использованием System.Linq
В C# у нас есть System.Linq пространство имен, предоставляющее различные методы для выполнения различных операций в массиве. Например,
Пример:найти минимальный и максимальный элемент
using System;
// provides us various methods to use in an array
using System.Linq;
namespace ArrayMinMax {
class Program {
static void Main(string[] args) {
int[] numbers = {51, 1, 3, 4, 98};
// get the minimum element
Console.WriteLine("Smallest Element: " + numbers.Min());
// Max() returns the largest number in array
Console.WriteLine("Largest Element: " + numbers.Max());
Console.ReadLine();
}
}
} Вывод
Smallest Element: 1 Largest Element: 98
В приведенном выше примере
numbers.Min()- возвращает наименьшее число в массиве, 1numbers.Max()- возвращает наибольшее число в массиве, 98
Пример. Найдите среднее значение массива
using System;
// provides us various methods to use in an array
using System.Linq;
namespace ArrayFunction {
class Program {
static void Main(string[] args) {
int[] numbers = {30, 31, 94, 86, 55};
// get the sum of all array elements
float sum = numbers.Sum();
// get the total number of elements present in the array
int count = numbers.Count();
float average = sum/count;
Console.WriteLine("Average : " + average);
// compute the average
Console.WriteLine("Average using Average() : " + numbers.Average());
Console.ReadLine();
}
}
} Вывод
Average : 59.2 Average using Average() : 59.2
В приведенном выше примере мы использовали
numbers.Sum()чтобы получить сумму всех элементов массиваnumbers.Count()чтобы получить общее количество элементов внутри массива
Затем мы делим сумму на количество, чтобы получить среднее значение.
float average = sum / count; Здесь мы также использовали numbers.Average() метод System.Linq пространство имен, чтобы получить среднее значение напрямую.
Примечание :обязательно использовать System.Linq пространство имен при использовании Min() , Max() , Sum() , Count() и Average() методы.
Язык C
- Зубчатый массив С#
- Передача массива в функцию в программировании на C++
- Передать массивы функции в C
- Связь между массивами и указателями
- Массивы копирования Java
- Массивы в C++ | Объявить | Инициализировать | Указатель на примеры массивов
- C++ динамическое выделение массивов с примером
- Учебное пособие по массивам Java:объявление, создание, инициализация [пример]
- MATLAB — Массивы
- Полное руководство по массивам Ball Grid