Cat hungry.png
Здравствуйте! Собираем деньги на перевод материалов по электронике(https://www.allaboutcircuits.com/education/). Реквизиты указаны здесь.

Processing:Справочник языка Processing/arrayCopy()

Материал из Онлайн справочника
Перейти к: навигация, поиск


Перевод: Максим Кузьмин (Cubewriter)
Перевел 2686 статей для сайта.

Контакты:

Проверка/Оформление/Редактирование: Мякишев Е.А.


Ambox content.png Черновик


arrayCopy() [1]

Обозначение

arrayCopy()

Описание

Копирует один массив (или часть массива) во второй массив. Массив src копируется в массив dst – начиная с позиции, заданной в параметре srcPosition, и на позицию, заданную в параметре dstPosition. Количество копируемых элементов определяется параметром length. Обратите внимание, что копируемые значения перезапишут существующие значения в массиве, в который они копируются. Чтобы добавить значения, а не перезаписать их, используйте метод concat().

Упрощенная версия этого метода имеет только два аргумента – arrayCopy(src, dst) – и она копирует весь массив в другой массив того же размера. Тоже самое можно проделать с помощью arrayCopy(src, 0, dst, 0, src.length).

Этот метод гораздо эффективней для копирования массива данных, чем итерирование при помощи цикла for() и копирование каждого элемента по отдельности. Этот метод копирует только указатели, и это значит, что в большинстве случаев он копирует только одномерные массивы (т.е. массивы с одним набором квадратных скобочек). Если использовать этот метод на двухмерном (трехмерном и т.д.) массиве, он скопирует только указатели на первое измерение, потому что двухмерные массивы – это просто «массив массивов». Это, впрочем, не выдаст никакой ошибки, т.к. часто этот метод такого поведения и ждет. Внутренне arrayCopy() метод вызывает другой метод – System.arraycopy() – и они во многом похожи друг на друга, т.к. arrayCopy() наследует много элементов у System.arraycopy().

Синтаксис

arrayCopy(src, srcPosition, dst, dstPosition, length)
arrayCopy(src, dst, length)
arrayCopy(src, dst)

Параметры

src         – исходный массив. Тип данных – Object
srcPosition – стартовая позиция в исходном массиве. Тип данных – int
dst         – массив, в который будут копироваться данные того же типа, что и в исходном массиве. Тип данных – Object
dstPosition – стартовая позиция в массиве, куда будут копироваться данные. Тип данных – int
length      – количество копируемых элементов массива. Тип данных – int

Возвращаемое значение

void

Пример

№1

  1. String[] north = { "OH", "IN", "MI" };
  2. String[] south = { "GA", "FL", "NC" };
  3. arrayCopy(north, south);
  4. println(south);
  5. // напечатает в консоли содержимое обновленного массива:
  6. // [0] "OH"
  7. // [1] "IN"
  8. // [2] "MI"

№2

  1. String[] north = { "OH", "IN", "MI"};
  2. String[] south = { "GA", "FL", "NC"};
  3. arrayCopy(north, 1, south, 0, 2);
  4. println(south);
  5. // напечатает в консоли содержимое обновленного массива:
  6. // [0] "IN"
  7. // [1] "MI"
  8. // [2] "NC"

См.также

Внешние ссылки

  1. processing.org - arrayCopy()