Go 에서 String 의 Contains 는 있었지만..
slice 의 Contains 는 없어서 구현해서 사용해야 했다.
구현 방법은 간단한데
func contains(s []string, substr string) bool {
for _, v := range s {
if v == substr {
return true
}
}
return false
}
func contains(s []int, i int) bool {
for _, v := range s {
if v == i {
return true
}
}
return false
}
이렇게 만들어 두고 호출을 했어야 했는데
Go 1.18 부터 나왔네
Contains 뿐만 아니고 여러가지가 나왔으니 확인 해 볼 필요가 있다.
https://pkg.go.dev/golang.org/x/exp/slices
go get golang.org/x/exp/slices
// You can edit this code!
// Click here and start typing.
package main
import (
"fmt"
"golang.org/x/exp/slices"
)
func main() {
fruits := []string{"apple", "orange", "banana", "watermelon"}
fmt.Println(slices.Contains(fruits, "banana")) // true
}
true
Program exited.
1.18 이상의 버전을 사용하면 Document 를 참고해서 알아두자!
'Language > Go' 카테고리의 다른 글
[Go] Convert image.NRGBA to byte slice (0) | 2022.09.28 |
---|---|
[Go] JWT token decode (0) | 2022.09.21 |
[Go] filetype (MIME type) (0) | 2022.09.16 |
[Go] get image width height (image: unknown format) (0) | 2022.09.15 |
[Go] get file extension (0) | 2022.09.14 |