在Go語言中,數組的長度是不可變的,因此無法直接刪除數組中的元素。但是我們可以通過創建一個新的數組,將不需要刪除的元素復制到新數組中來“刪除”指定元素。下面是一個示例代碼:
package main
import "fmt"
func removeElement(arr []int, elem int) []int {
result := make([]int, 0)
for _, val := range arr {
if val != elem {
result = append(result, val)
}
}
return result
}
func main() {
arr := []int{1, 2, 3, 4, 5}
elem := 3
newArr := removeElement(arr, elem)
fmt.Println(newArr) // 輸出: [1 2 4 5]
}
在上述代碼中,我們定義了一個名為removeElement
的函數,該函數接受一個整數切片和一個整數作為參數。在函數內部,我們創建了一個新的空切片result
,然后遍歷原始切片arr
的每個元素。如果元素不等于要刪除的元素elem
,則將其追加到新切片result
中。最后,函數返回新切片。
在main
函數中,我們定義了一個初始切片arr
和要刪除的元素elem
為3。然后,我們調用removeElement
函數,并將結果保存在newArr
中。最后,我們打印出newArr
,它將不包含元素3的切片。