Только первый l oop копирует содержимое number
в новый массив. Два других цикла предназначены для печати содержимого массивов numbers
и copy
соответственно.
Вам не нужно использовать для l oop для клонирования массива. Есть альтернативы для достижения того же. 3 из них приходят мне на ум, где первый кажется лучшим, так как вы можете иметь объявление и инициализацию в одной строке.
int[] numbers = new int[] { 4, 5, 2, 3, 1, 0, 8, 9, 7, 6 };
// Create a clone using LinQ:
// as @BrettCaswell pointed out,
// Select() is not required since we are not modifying, manipulating or filtering the elements.
// .ToArray() would do.
// int[] copyOfNumbersWithLinQ = numbers.Select(a => a).ToArray();
int[] copyOfNumbersWithLinQ = numbers.ToArray();
// Copy using Array.Copy():
int[] copyOfNumbersWithArrayCopy = new int[numbers.Length];
Array.Copy(numbers, copyOfNumbersWithArrayCopy, numbers.Length);
// Copy using numbers.CopyTo()
int[] copyOfNumbersWithCopyTo = new int[numbers.Length];
numbers.CopyTo(copyOfNumbersWithCopyTo, 0);