🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
添加数组元素 ``` using System; namespace ConsoleApp1 { class Program { public static void Main(string[] args) { int[] iarr = new int[] { 0, 1, 2, 3, 4, 6, 7, 8, 9 }; iarr=AddValueToArray(iarr,4,5); Console.WriteLine("新数组为:"); Console.WriteLine();//换行 foreach (int value in iarr) { Console.WriteLine(value+"\r\n"); } Console.ReadLine(); } ///<summary> ///增加单个数组元素 ///</summary> ///<param name="ArrayBorn">要向其中添加元素的一维数组</param> ///<param name="Index">添加索引</param> ///<param name="Value">添加值</param> ///<returns></returns> static int[] AddValueToArray(int[] ArrayBorn, int Index, int Value) { //判断添加索引是否大于数组的长度 if (Index >= (ArrayBorn.Length)) { //将添加索引设置为数组的最大索引 Index = ArrayBorn.Length - 1; } //申明一个新数组 由于要添加一个元素那么新数组长度设置比原来的多1 int[] TemArr = new int[ArrayBorn.Length + 1]; //遍历新数组的元素 for (int i = 0; i < TemArr.Length; i++) { if (Index >= 0) { if (i<(Index+1)) { // i小于指定的索引,直接将源数组的值赋予它 TemArr[i] = ArrayBorn[i]; } else if (i==(Index+1)) { //如果新数组的索引i=Index+1时是插入的位置 TemArr[i] = Value; } else { //交换元素值(i>Index+1) TemArr[i] = ArrayBorn[i - 1]; } } else { //Index<0 直接将值插入到开头 //判断遍历的索引是否为0 if (i==0) { //为遍历到的索引添加值 TemArr[i] = Value; } else { //交换元素值 TemArr[i] = ArrayBorn[i - 1]; } } } return TemArr; } } } ``` 向一维数组添加一个数组 ``` using System; namespace ConsoleApp1 { class Program { public static void Main(string[] args) { int[] arr1= { 0, 1, 2, 3, 8, 9 }; int[] arr2 = { 4, 5, 6, 7 }; arr1=AddArrayToArray(arr1, 3, arr2);//0123456789 foreach (int value in arr1) { Console.WriteLine(value + "\r\n"); } Console.ReadLine(); } ///<summary> ///向一个一维数组中添加一个数组 ///</summary> ///<param name="ArrayBorn">源数组</param> ///<param name="Index">添加索引</param> ///<param name="ArrayAdd">要添加的数组</param> ///<returns></returns> static int[] AddArrayToArray(int[] ArrayBorn, int Index, int[] ArrayAdd) { //判断添加索引是否大于数组的长度 if (Index >= (ArrayBorn.Length)) { //将添加索引设置为数组的最大索引 Index = ArrayBorn.Length - 1; } //申明一个新数组 长度是ArrayBorn与ArrayAdd之和 int[] TemArr = new int[ArrayBorn.Length +ArrayAdd.Length]; //遍历新数组的元素 for (int i = 0; i < TemArr.Length; i++) { if (Index >= 0) { if (i < (Index + 1)) { // i小于指定的索引,直接将源数组的值赋予它 TemArr[i] = ArrayBorn[i]; } else if (i == (Index + 1)) { //遍历要添加的数组 for (int j = 0; j < ArrayAdd.Length; j++) { //为遍历到的索引添加值 TemArr[i + j] = ArrayAdd[j]; } //将遍历索引设置为要添加数组的索引最大值 i = i + ArrayAdd.Length - 1; } else { //交换元素值 TemArr[i] = ArrayBorn[i - ArrayAdd.Length]; } } else { //Index 小于0时 直接将插入的数组插入到开头 //判断遍历的索引是否为0 if (i == 0) { //遍历要添加的数组 for (int j = 0; j < ArrayAdd.Length; j++) { //为遍历到的索引添加值 TemArr[i + j] = ArrayAdd[j]; } //将遍历索引设置为要添加数组的索引最大值 i = i + ArrayAdd.Length - 1; } else { //交换元素值 TemArr[i] = ArrayBorn[i - ArrayAdd.Length]; } } } return TemArr; } } } ```