1.3.3 从数组中删除元素

  1. Go语言并没有直接提供用于删除数组或切片元素的语法或接口,而是利用切片本身的特性来删除或追加元素。即以被删除元素为分界点,将前后两个部分的内存重新链接起来,通过append()函数实现对单个元素及元素片段的删除,示例:

    func main() {
    	// 初始化一个新的切片seq
    	seq := []string{"i", "love", "snow", "advanced", "programming"}
    
    	// 指定删除位置
    	index := 2
    
    	// 输出删除位置之前和之后的元素  seq[index + 1:]表示将整个的后段添加到当前段中
    	fmt.Println(seq[:index], seq[index+1:])
    
    	// 将删除部分前后的元素链接起来
    	seq = append(seq[:index], seq[index+1:]...)
    
    	// 输出连接后的切片
    	fmt.Println(seq)
    
    }

    结果:

    [i love] [advanced programming]
    [i love advanced programming]

Last updated