Методы массивов
Часть раздела Основы путешествия по C# на Coddy. Урок 59 из 70.
Массивы имеют множество методов (функций). Чтобы вызвать метод, напиши:
Array.MethodName(arrayName, otherParameters)Распространённые методы массивов:
Clear(array, index, length) — сбрасывает length элементов, начиная с index, до значения по умолчанию: 0 для чисел, false для bool, null для string:
int[] numbers = {1, 2, 3, 4, 5};
Array.Clear(numbers, 1, 3);
// numbers будет содержать {1, 0, 0, 0, 5}Reverse(array) — меняет порядок элементов массива на обратный:
int[] numbers = {1, 2, 3, 4, 5};
Array.Reverse(numbers);
// numbers будет содержать {5, 4, 3, 2, 1}Sort(array) — сортирует элементы массива в порядке возрастания:
int[] numbers = {5, 2, 9, 1, 5, 6};
Array.Sort(numbers);
// numbers будет содержать {1, 2, 5, 5, 6, 9}Copy(sourceArray, sourceIndex, destinationArray, destinationIndex, length) — копирует length элементов из sourceArray, начиная с sourceIndex, в destinationArray, начиная с destinationIndex:
int[] source = {1, 2, 3, 4, 5};
int[] destination = new int[5];
Array.Copy(source, 0, destination, 0, source.Length);
// destination будет содержать {1, 2, 3, 4, 5}Задание
ЛегкоСоздай метод с именем Merge, который принимает два массива в качестве аргументов. Метод объединяет два массива в один отсортированный массив и возвращает его.
Например, следующие аргументы: Merge(new string[] {"1", "4", "2"}, new string[] {"2", "5", "9"}) вернут ["1", "2", "2", "4", "5", "9"]
Используй Array.Copy(), чтобы скопировать элементы из одного массива в другой. Синтаксис:
Array.Copy(sourceArray, sourceStartPosition, destinationArray, destinationStartPosition, length)Например:
// Source array
string[] sourceArray = {"1", "2", "3", "4", "5"};
// Destination array
string[] destinationArray = new string[5];
// Copy elements from sourceArray to destinationArray
Array.Copy(sourceArray, 0, destinationArray, 0, sourceArray.Length);Массив назначения после копирования: 1 2 3 4 5
Попробуйте сами
using System;
public class Program {
public static string[] Merge(string[] arr1, string[] arr2) {
string[] result = new string[arr1.Length + arr2.Length];
// Скопируйте arr1 и arr2 в result
// Затем отсортируйте result
return result;
}
public static void Main(string[] args) {
string textArr1 = Console.ReadLine();
string textArr2 = Console.ReadLine();
string[] arr1 = textArr1.Split(",");
string[] arr2 = textArr2.Split(",");
string[] mergedArray = Merge(arr1, arr2);
Console.WriteLine(string.Join(", ", mergedArray));
}
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияИнкремент и декрементПостфиксные инкремент и декрементСокращённая запись арифметических операций7Основы ввода-вывода
Базовый выводИнтерполяция строкЧтение вводаРазборПовторение — до 120Повторение — истина или ложь5Операторы, часть 2
Операторы сравненияЛогические операторы, часть 1Логические операторы, часть 2Повторение — простая логикаЛогические операторы, часть 33Переменные. Часть 2
VarКонстантыСоглашения об именованииПовторение: инициализация переменныхПреобразование типов6Принятие решений
Оператор ifif-elseОператор switchТернарный операторПовторение: if-elseВложенный if-elseПотренируйтесь самостоятельно: Онлайн-компилятор C#