Ответ
System.arraycopy() работает быстро благодаря нативной реализации, которая использует низкоуровневые оптимизации процессора (например, SIMD-инструкции для копирования блоков памяти). Он копирует данные напрямую, минуя JVM-овские проверки, и часто выполняется за один вызов системной функции.
Пример:
int[] src = {1, 2, 3};
int[] dest = new int[3];
System.arraycopy(src, 0, dest, 0, src.length); // Быстрое копирование
Ключевые преимущества:
- Обходит границы Java-массива, работая с raw-памятью
- Использует оптимизированные ассемблерные инструкции
- Не создает промежуточных объектов
- Поддерживает overlapping-регионы (когда src и dest пересекаются)