选中每个切片Go中的包含值编号



是否有一种简单的方法可以使用GO Lang检查每个切片中是否包含数字值,这样就不需要for range或for切片了?

2个解决方案:

使用slices.Contains

package main
import (
"fmt"
"golang.org/x/exp/slices"
)
func main() {
arr := []int{1, 2, 3, 4, 5}
fmt.Println(slices.Contains(arr, 3))
fmt.Println(slices.Contains(arr, 6))
}

去游乐场

你可以在这里找到slices.Contains的实现

使用集合而不是切片

package main
import (
"fmt"
)
func main() {
arr := map[int]struct{}{
1: {},
2: {},
3: {},
4: {},
5: {},
}
_, contains3 := arr[3]
fmt.Println(contains3)
_, contains6 := arr[6]
fmt.Println(contains6)
}

去游乐场

点击此处阅读更多关于地图的信息,以及如何在此处使用地图创建一组

希望这能有所帮助:(

最新更新