System.arraycopy C#
时间: 2024-05-21 12:08:32 浏览: 148
System.arraycopy是C#中用于数组复制的方法。它可以将一个数组中的元素复制到另一个数组中。以下是System.arraycopy的使用方法:
```csharp
System.Array.Copy(sourceArray, sourceIndex, destinationArray, destinationIndex, length);
```
其中,sourceArray是源数组,sourceIndex是源数组的起始位置,destinationArray是目标数组,destinationIndex是目标数组的起始位置,length是要复制的元素个数。
例如,以下代码将sourceArray中的前5个元素复制到destinationArray中:
```csharp
int[] sourceArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int[] destinationArray = new int;
System.Array.Copy(sourceArray, 0, destinationArray, 0, 5);
```
以上代码执行后,destinationArray中的元素为{1, 2, 3, 4, 5}。
相关问题
和system.arraycopy类似的功能
和Java中的`System.arraycopy()`类似的功能,在C#中可以使用`Array.Copy()`方法实现。
`Array.Copy()`方法可以将一个数组的元素复制到另一个数组中,可以指定要复制的元素数量、源数组的起始索引和目标数组的起始索引。以下是一个示例:
```csharp
int[] sourceArray = {1, 2, 3, 4, 5};
int[] targetArray = new int[5];
Array.Copy(sourceArray, 0, targetArray, 0, 5);
foreach (int i in targetArray)
{
Console.WriteLine(i);
}
```
输出为:
```
1
2
3
4
5
```
在上面的示例中,我们将`sourceArray`数组中的所有元素复制到了`targetArray`数组中,因为两个数组的大小相同,所以我们将源数组的起始索引设置为0,目标数组的起始索引也设置为0,并且复制元素的数量为5。
c#arraycopy
在C#中,Array.Copy() 是一个静态方法,用于复制数组的一部分到另一个数组中。这个方法在 System.Array 类中定义,可以原地或非原地复制数据,不需要创建额外的对象。
语法通常是这样的:
```csharp
public static void Copy(Array sourceArray, int sourceIndex, Array destinationArray, int destinationIndex, int length);
```
参数含义:
- `sourceArray`:源数组。
- `sourceIndex`:源数组中开始复制的位置索引。
- `destinationArray`:目标数组。
- `destinationIndex`:目标数组中接收复制元素的位置索引。
- `length`:要复制的元素的数量。
例如,如果你有一个整数数组,你可以轻松地将前几个元素复制到另一个数组的特定位置:
```csharp
int[] source = {1, 2, 3, 4, 5};
int[] dest = new int[10];
Array.Copy(source, 0, dest, 2, 3); // 将源数组从索引0开始的3个元素复制到目标数组从索引2开始的位置
```
这会把 `sourceArray` 中索引从0开始的3个元素 (1, 2, 3) 复制到 `destArray` 的第2个位置(因为是从索引2开始),最终 `destArray` 变为 `{0, 0, 1, 2, 3, ...}`。
阅读全文