在Go中,是否有比以下方法更惯用的方式将数组/slice 的所有元素添加到 channel 中?
ch := make(chan string)
values := []string {"lol", "cat", "lolcat"}
go func() {
for _,v := range values {
ch <- v
}
}()
我正在寻找类似
ch <- values...
的东西(编译器拒绝了它) 最佳答案
您可以声明字符串数组的chan,除非您绝对想保留字符串的chan:
package main
import "fmt"
func main() {
ch := make(chan []string)
values := []string{"lol", "cat", "lolcat"}
go func() {
ch <- values
}()
fmt.Printf("Values : %+v\n", <-ch)
}