Directory:
1. 切片删除
2. 数组拷贝删除
Copy after login
1. Background
In golang In the programming process, operating arrays is also a necessary link. During the operation of the array, sometimes it is necessary to delete the array. This article will introduce two methods of golang array deletion.
2. Golang Array Basics
In golang, an array is a container of fixed length and elements of the same type. The length of the array must be specified when defining the array. The length is part of the array type, so the length cannot be changed after definition.
We use a simple example to explain the basic use of golang arrays:
//定义一个长度为3的int型数组
var arr [3]int
// 赋值
arr[0] = 1
arr[1] = 2
arr[2] = 3
// 取值
fmt.Println(arr[0],arr[1],arr[2])
// 输出:1 2 3
Copy after login
3. Golang array deletion method
In golang, although the array is a container, Because of its fixed-length nature, we cannot directly delete an element in the array. So in practical applications, we can delete elements in the array through the following two methods:
Slice deletion-
In golang, slice (slice) is a A dynamic array type, both of which are continuous memory spaces and have variable length. Because of the variable-length nature of slices, we can use slices to complete array deletion operations.
//定义一个长度为3的int型数组
var arr = [3]int{1, 2, 3}
// 将数组转换成切片,进行删除
slice := arr[:]
deleteIndex := 1
if len(slice) > deleteIndex {
slice = append(slice[:deleteIndex], slice[deleteIndex+1:]...)
fmt.Println(slice)
}
// 输出:[1 3]
Copy after login
In the above code, we first convert the array into a slice, then specify the subscript to be deleted, and delete the deleted elements from the slice through the append function. Finally print out the deleted slices.
Array copy deletion-
Since the array length is immutable, we can use the copy function in golang to implement the deletion operation.
//定义一个长度为3的int型数组
var arr = [3]int{1, 2, 3}
// 拷贝删除
deleteIndex := 1
if len(arr) > deleteIndex {
arr = append(arr[:deleteIndex], arr[deleteIndex+1:]...)
fmt.Println(arr)
}
// 输出 :[1 3 0]
Copy after login
In the above code, we also specify the subscript to be deleted, and then delete the element to be deleted from the array through the append function. The difference is that we directly reassign the deleted array to the original array.
4. Summary
Through the above two methods, we can easily delete golang array elements. Slice deletion facilitates code writing, while array copy deletion allows direct manipulation of the original array. In actual development, we can flexibly use the two methods as needed.
The above is the detailed content of How to delete array elements in golang (two methods). For more information, please follow other related articles on the PHP Chinese website!