C#向數組添加數組


 1 using System;
 2 
 3 namespace ConsoleApp1
 4 {
 5     class Program
 6     {
 7        /// <summary>
 8        /// 向數組添加數組
 9        /// </summary>
10        /// <param name="arrayBorn">源數組</param>
11        /// <param name="index">添加索引</param>
12        /// <param name="value">添加數組</param>
13        /// <returns></returns>
14         static int[] AddNewArray(int[] arrayBorn,int index,int[] arrayAdd) 
15         {
16             if (index >= arrayBorn.Length)   //第一種情況:索引大於等於數組最大長度
17             {
18                 index = arrayBorn.Length;
19             }
20             int[] arrayNew = new int[arrayBorn.Length + arrayAdd.Length];     //聲明一個新數組,長度為源數組+1          
21             for (int i = 0;i < arrayNew.Length;i++)
22             {
23                 if (index >= 0)
24                 {
25                     if (i < index)
26                     {
27                         arrayNew[i] = arrayBorn[i];
28                     }
29                     else if (i == index)
30                     {
31                         for (int j = 0; j < arrayAdd.Length; j++)
32                         {
33                             arrayNew[i + j] = arrayAdd[j];
34                         }
35                         i = i + arrayAdd.Length - 1;    //注意:此時的索引需要減1,因為執行完此語句進入下次循環,i又會加1
36                     }
37                     else
38                     {
39                         arrayNew[i] = arrayBorn[i - arrayAdd.Length];
40                     }
41                 }
42                 else    //第二種情況:索引小於0,一律視為等於0處理
43                 {
44                     if (i == 0)
45                     {
46                         for (int j = 0; j < arrayAdd.Length; j++)
47                         {
48                             arrayNew[i + j] = arrayAdd[j];
49                         }
50                         i = i + arrayAdd.Length;
51                     }
52                     else
53                     {
54                         arrayNew[i] = arrayBorn[i - arrayAdd.Length];
55                     }
56                 }
57             }
58             return arrayNew;
59         }
60         static void Main(string[] args)
61         {
62             int[] arrayInt = new int[] { 0,1,2,3,4,5,6,7,8,9};
63             int[] arrayInt1 = new int[] { 4,3,2,1};
64             Console.WriteLine("原數組元素:");
65             foreach (int i in arrayInt)
66             {
67                 Console.Write(i + " ");
68             }
69             Console.WriteLine();
70             Console.WriteLine("要插入的數組:");
71             foreach (int i in arrayInt1)
72             {
73                 Console.Write(i + " ");
74             }
75             Console.WriteLine();
76             arrayInt = AddNewArray(arrayInt,1, arrayInt1);
77             Console.WriteLine("插入新元素的數組");
78             foreach (int i in arrayInt)
79             {
80                 Console.Write(i + " ");
81             }
82         }
83     }
84 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM