登录
首页 >  Golang >  Go问答

理解第21行中的 .(Cat) 的用法是什么?

来源:stackoverflow

时间:2024-02-07 14:27:22 280浏览 收藏

在IT行业这个发展更新速度很快的行业,只有不停止的学习,才不会被行业所淘汰。如果你是Golang学习者,那么本文《理解第21行中的 .(Cat) 的用法是什么?》就很适合你!本篇内容主要包括##content_title##,希望对大家的知识积累有所帮助,助力实战开发!

问题内容

这是来自 golang 教程的代码:2:37:32 完成完整课程

我无法理解他在 kitty 上使用 .(cat) 时的意思

他是一种类型转换还是猫类型的猫界面上的东西?(不知道我在说什么,请帮忙)

如果可能,请分享文档链接

var kitty2 cat = kitty.(cat)
package main

type Cat string

type Animal interface {
    happy() string
    sad() string
}

func (c Cat) happy() string {
    return "haha"
}

func (c Cat) sad() string {
    return ":("
}

func main() {
    var kitty Animal
    kitty = Cat("kitty")
    var kitty2 Cat = kitty.(Cat)
}

正确答案


这是一次类型转换的尝试。看看这个教程tour 如果他们完成了以下操作,那么您可以使用变量 ok 来检查类型转换是否有效,这里 ok 的类型为 bool

kitty, ok := kitty.(Cat)

好了,本文到此结束,带大家了解了《理解第21行中的 .(Cat) 的用法是什么?》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

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