Go 过滤切片

示例

要过滤切片而不分配新的基础数组:

// 我们的基础片
slice := []int{ 1, 2, 3, 4 }
// 使用相同的基础数组创建零长度切片
tmp := slice[:0]

for _, v := range slice {
  if v % 2 == 0 {
    // 将所需的值追加到切片
    tmp = append(tmp, v)
  }
}

// (可选)重新分配切片
slice = tmp // [2,4]