C#中定义好了数组a,有什么方法可以直接截取数组a的几个元素来组成新数组(不能直接输入数组初值)

如,int[] a=new int[5]{1,2,3,4,5}
我想取a数组的前3个元素来组成新数组b,但是不能直接赋值写成 int[] b={1,2,3}
有没有其他方法?

 我来答 

分享


小怪兽爱吃肉
浏览 1441回答 4
4回答

阿晨1998

123456  static void Main(string[] args){            int[] a = new int[5] { 1, 2, 3, 4, 5 };            int[] b = new int[3];            // 下面这句话的意思是:从数组a下标为2的元素开始克隆元素到目标数组b下标为0的作为接受克隆过来的值的起始存储的位置,总共在a数组截取3个元素             Array.ConstrainedCopy(a, 2, b, 0, 3);  } 

幕布斯7119047

Array.Size(ref a,3);:将数组的大小更改为指定的新大小。Array.ConstrainedCopy(a,0,b,0,3);:从指定的源索引开始,复制 Array 中的一系列元素,将它们粘贴到另一 Array 中(从指定的目标索引开始),public static void ConstrainedCopy (Array sourceArray,int sourceIndex,Array destinationArray,int destinationIndex,int length)参数sourceArrayArray,它包含要复制的数据。sourceIndex一个 32 位整数,它表示 sourceArray 中复制开始处的索引。destinationArrayArray,它接收数据。destinationIndex一个 32 位整数,它表示 destinationArray 中存储开始处的索引。length一个 32 位整数,它表示要复制的元素数目。

HUX布斯

int[] a = new int[5] { 1, 2, 3, 4, 5 };int[] b = new int[3];Array.Copy(a, 0, b, 0, 3);

千万里不及你

123456int[]&nbsp;a&nbsp;=&nbsp;new&nbsp;int[5]&nbsp;{&nbsp;1,&nbsp;2,&nbsp;3,&nbsp;4,&nbsp;5&nbsp;};&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int[]&nbsp;b&nbsp;=&nbsp;new&nbsp;int[3];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;b.Length;&nbsp;i++)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b[i]&nbsp;=&nbsp;a[i];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;
打开App,查看更多内容
随时随地看视频慕课网APP