Программирование на языке C#
Метод Copy Метод Copy() является статическим методом
Download 1.19 Mb. Pdf ko'rish
|
Программирование на языке C#
Метод Copy
Метод Copy() является статическим методом класса Array , который копирует заданную часть одного массива в другой. Не углубляясь в тематику объектно-ориентированного программирования, скажем, что вызов статических методов отличается от не статических тем, что не требуется создания 68 экземпляра класса (см. раздел 7). Обращение к таким методам происходит по имени класса, а не экземпляра. Метод Copy копирования вызывается через класс Array.Copy(arguments); В качестве arguments , в соответствии с синтаксисом языка передается последовательность параметров через запятую с указанием имени параметра и его типа. Реализовано два общих варианта метода Copy с различными параметрами. В первом варианте синтаксиса метода задаются следующие пять параметров public static void Copy (Array sourceArray, long sourceIndex, Array destinationArray, long destinationIndex, long length); во втором варианте, задаются следующие три параметра public static void Copy (Array sourceArray, Array destinationArray, long length); Рассмотрим назначение параметров для метода Copy . Array sourceArray – массив, содержащий данные, необходимые для копирования; long(int) sourceIndex – 64- разрядное (32-разрядное) целое число, задающее индекс в массиве sourceArray , с которого выполняется копирование элементов. Array destinationArray – массив в который производится копирование (массив приемник). long destinationIndex – 64- разрядное (32-разрядное) целое число, представляющее индекс в массиве destinationArray , с которого начинается сохранение элементов. long length(int) – 64- разрядное (32-разрядное) целое число, представляющее число копируемых элементов. Целое число должно лежать в диапазоне от 0 до MaxValue включительно. Рассмотрим пример (листинг 25) копирования элементов массива source начиная с индекса sourceIx в массив destination начиная с индекса destinationIx методом Copy . int[] source = { -1, -2, 1, 2, 3, 4, 5, -8, -9 }; 69 int[] destination = new int[5]; //Объявляются вспомогательные индексы. int sourceIx = 2;//Индекс источника. int destinationIx = 0;//Индекс приемника. int numbers = 5;//Количество копируемых элементов. //Копируем из массива source со 2-го индекса 5 элементов помещаем 5 элементов в массив destination, начиная с 0-го индекса. Array.Copy(source,sourceIx, destination, destinationIx, numbers); foreach(int number in destination){ Console.Write($"{number} \t"); } Листинг 25. После выполнения данной программы на экране будет выведен массив: 1 2 3 4 5 В случае копирования элементов многомерных массивов, массивы воспринимаются как одномерный длинный массив, в котором строки расположены последовательно. Например, двумерный массив, состоящий из трёх строк и трёх столбцов, int [,] Mx = {{1,2,3},{4,5,6},{7,8,9}}; будет восприниматься следующим образом – {1, 2, 3, 4, 5, 6, 7, 8, 9}. При копировании, например, пяти элементов, с начала массива, будут скопированы все три элемента из первой строки, затем два элемента из второй строки. Если требуется начать копирование с указанного элемента массива, например, с третьей строки и второго столбца, то нужно правильно определить начальный индекс, равный сумме длин двух строк и номеру столбца. Download 1.19 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling