c# 将一个数组合并到另一个数组中 深拷贝
时间: 2024-09-21 15:08:27 浏览: 50
C#把数组中的某个元素取出来放到第一个位置的实现方法
5星 · 资源好评率100%
在 C# 中,如果你想要将一个数组添加到另一个数组中并保持原始数据不被修改(深拷贝),你需要创建一个新的数组并将元素复制过去。这里是一个简单的示例:
```csharp
using System;
public class Program
{
public static void Main(string[] args)
{
// 原始数组
int[] array1 = { 1, 2, 3 };
// 创建一个新的数组
int[] newArray = new int[array1.Length + 3]; // 新数组长度比原数组大3
// 深拷贝原始数组的内容
Array.Copy(array1, 0, newArray, 0, array1.Length); // 复制原数组前半部分
newArray[array1.Length] = 4; // 添加新元素
newArray[array1.Length + 1] = 5;
newArray[array1.Length + 2] = 6; // 添加更多新元素
Console.WriteLine("Original array:");
PrintArray(array1);
Console.WriteLine("\nNew array:");
PrintArray(newArray);
// 注意:这里的新数组只是包含了新的元素,不是对原数组的引用
}
public static void PrintArray(int[] arr)
{
foreach (int item in arr)
{
Console.Write(item + " ");
}
Console.WriteLine();
}
}
```
在这个例子中,`Array.Copy` 方法用于深拷贝,因为它创建了一个源数组的副本,而不是指向同一块内存。运行这段代码后,`array1` 和 `newArray` 是独立的数据结构。
阅读全文