请问这个 if else 哪里不对了
刚刚入门,写了个通道不断收发的实例,不过说语法不对。
package main import "fmt" import "time" func sender(ch chan int){ for i:=0;i<100;i++{ ch<-i time.Sleep(time.MillSecond) //ch<-i+1 } } func main() { ch:=make(chan int) go sender(ch) for { data,ok:=<-ch if ok!=nil { fmt.Println("data=",data) if data==50 { break } } else { fmt.Println("No data") } } fmt.Println("Done") }
把这个注释了就能正常运行: else { fmt.Println(“No data”) }