数组的增操作

📅 2026/7/12 18:07:16
数组的增操作
第一种情况数组末尾追加append元素比如现在设定了一个大小为10的数组里面装了 4 个元素现在想在末尾追加一个元素// 大小为 10 的数组已经装了 4 个元素 var arr [10]int for i : 0; i 4; i { arr[i] i } // 现在想在数组末尾追加一个元素4 arr[4] 4 // 再在数组末尾追加一个元素5 arr[5] 5 // 依此类推 // ...第二种情况数组中间插入insert元素比如现在设定了一个大小为10的数组里面装了 4 个元素现在想要在第三个位置插入一个新元素import fmt func main(){ var arr[10]int for i : 0;i4;i{ arr[i] i } //在索引2处加入新的元素需要把索引2以及之后的元素都往后移一位要倒着遍历已有元素避免覆盖 for i : 4;i 2; i--{ arr[i]arr[i-1] } arr[2]999 fmt.Println(arr) }第三种情况数组空间已满需要注意静态数组在创建的时候就需要指定好大小这个时候就得重新申请一块儿更大的内存空间把原来的数据复制过去再插入新的元素这种操作叫做“扩容”// 大小为 10 的数组已经装满了 arr : make([]int, 10) for i : 0; i 10; i { arr[i] i } // 现在想在数组末尾追加一个元素 10 // 需要先扩容数组 newArr : make([]int, 20) // 把原来的 10 个元素复制过去 for i : 0; i 10; i { newArr[i] arr[i] } // 释放旧数组的内存空间 // ... // 在新的大数组中追加新元素 newArr[10] 10