") reader:=" />
登录
首页 >  Golang >  Go问答

Golang 新手遇到问题:嵌套 if else 出现错误

来源:stackoverflow

时间:2024-02-20 17:45:14 178浏览 收藏

各位小伙伴们,大家好呀!看看今天我又给各位带来了什么文章?本文标题《Golang 新手遇到问题:嵌套 if else 出现错误》,很明显是关于Golang的文章哈哈哈,其中内容主要会涉及到等等,如果能帮到你,觉得很不错的话,欢迎各位多多点评和分享!

问题内容

内部的 if else 没有被到达,尽管它是正确的。我不知道为什么它与字符串的相等性测试不匹配,因此使用接口变量调用函数不起作用

fmt.Println("Enter a valid query:")
fmt.Printf(">")
reader:=bufio.NewReader(os.Stdin)
inp,_:=reader.ReadString('\n')
query:=strings.Split(inp," ")           
fmt.Println("0 : ",query[0])
fmt.Println("1 : ",query[1])

st:=query[1]
if query[0]=="cow"{
fmt.Println("inside cow going to",st)
    var a animal=cow{"Cow"}
    if query[1]=="eat"{
        a.eat()
    } else if query[1]=="move"{
        a.move()
    } else if st=="speak"{
        fmt.Println("inside cow speak")//Not reaching here even
        a.speak()
    }
}

解决方案


我认为您的 query[1] 中有一个 \n (换行) 如果您使用 query:=strings.Fields(inp) 而不是 query:=strings.Split(inp," ") 您的问题应该消失。

理论要掌握,实操不能落!以上关于《Golang 新手遇到问题:嵌套 if else 出现错误》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>