Go 切片删除元素

Posted tulipgirl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go 切片删除元素相关的知识,希望对你有一定的参考价值。

Go Slice删除元素

1. 删除单个元素

func delItem(vs []string, s string) []string{
    for i := 0; i < len(vs); i++ {
          if s == vs[i] {
                vs = append(vs[:i], vs[i+1:]...)
                  i = i-1
          }
    }
    return vs
}

2.删除多个元素

func delItems(vs []string, dels []string) []string {
      dMap := make(map[string]bool)
      for _, s := range dels {
            dMap[s] = true
      }

      for i := 0; i < len(vs); i++ {
            if _, ok := dMap[vs[i]]; ok {
                  vs = append(vs[:i], vs[i+1:]...)
                  i = i-1
            }
      }
      return vs
}

以上是关于Go 切片删除元素的主要内容,如果未能解决你的问题,请参考以下文章

Go删除切片元素的另一种姿势

Go 切片删除元素

你知道的Go切片扩容机制可能是错的

Golang入门到项目实战 | go语言切片元素的添加和删除copy

Go语言自学系列 | go语言切片元素的添加和删除copy

Go语言切片