Копирование массивов
В классе
System
из пакета
java.iang
есть статический метод копирования массивов, который использует сама исполняющая система Java. Этот метод действует быстро и надежно, его удобно применять в программах. Синтаксис:
static void arraycopy(Object src, int src_ind, Object dest, int dest_ind, int count)
Из массива, на который указывает ссылка
src
, копируется
count
элементов, начиная с элемента с индексом
src_ind
, в массив, на который указывает ссылка
dest
, начиная с его элемента с индексом
dest_ind.
Все индексы должны быть заданы так, чтобы элементы лежали в массивах, типы массивов должны быть совместимы, а примитивные типы обязаны полностью совпадать. Ссылки на массивы не должны быть равны
null
.
Ссылки
src
и
dest
могут совпадать, при этом для копирования создается промежуточный буфер. Метод можно использовать, например, для сдвига элементов в массиве. После выполнения
int[] arr = {5, 6, 1, 8, 9, 1, 2, 3, 4, 5, -3, -7};
System.arraycopy(arr, 2, arr, 1, arr.length — 2);
получим (
5, 7, 8, 9, 1, 2, 3, 4, 5, -3, -7, -7}
.