在GO中检查元素在GO中检查元素在GO中的存在,在GO中,Slice并未将Slice在本机上包括Slice.Contains(Object)(对象)确定元素的存在。取而代之的是,一个常见的解决方案是通过每个元素迭代进行搜索。
slice.contains(&& &&&&&&&&&&&&最不匹配)。 导入“ FMT” func main(){ 切片:= [] int {1,2,3} 如果slicecontains(slice,2){ fmt.println(“包含”) } 别的 { fmt.println(“不包含”) } } func slicecontains(slice [] int,object int)bool { 对于_,v:= range slice { 如果v ==对象{ 返回true } } 返回false } 二进制搜索:
int {1,2,3} sort.ints(切片) 索引:= sort.searchints(切片,2) 如果index!= len(slice){ fmt.println(“包含”) } 别的 { fmt.println(“不包含”) } }int {1,2,3} m:= make(map [int] struct {},len(slice)) 对于_,v:= range slice { m [v] = struct {} {} } 如果_,存在:= m [2];存在{ fmt.println(“包含”) } 别的 { fmt.println(“不包含”) } }
在这种情况下,由于其优化的内部映射类型针对此类值。免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3