如何在 c# 中使用 Array.copy(Array,long,array,long,long)

本文关键字:long Array copy array | 更新日期: 2023-09-27 18:33:39

我是C#的新手。我在C#项目中工作。iam 使用 Array.Copy() 函数 但它给出了编译时错误,即在 Array.Copy() 处的参数无效; 方法可以任何机构来解决无效的参数。错误。

int N=50;
    int M=N*2;
    int[,] amn = new int[M,N];
    //for(int i=0;i<M;i++)
    //Arrays.fill(amn[i], 0);
    int[] a=new int[2];
    int[] b=new int[2];
    a[0]=1;b[1]=1;
    for(int i=0;i<M;i++)
    {
        for(int j=0;j<N/2;j++)
        {
            if(i%2==0)
                Array.Copy(a, 0, amn[i], j*2, 2);
            else
                Array.Copy(b, 0, amn[i], j*2, 2);
        }
    }

如何在 c# 中使用 Array.copy(Array,long,array,long,long)

首先,由于amn二维数组,在这种情况下amn[i] int而不是数组。事实上,它不允许在没有定义第二尺寸的情况下使用。

您的Array.Copy将数组作为第三个参数。

作为替代方法,如果要在数组上进行处理,可以使用交错数组

如果你正在寻找类似于 java 函数,比如 C# 中的 system.arraycopy...然后使用System.Array.ConsstrictedCopy.

description:从指定的源索引开始复制数组中的一系列元素,并将它们粘贴到从指定目标索引开始的另一个数组中。保证在复制未成功完成时撤消所有更改。