Golang 语言条件语句

Golang(Go语言)中的条件语句允许你根据条件表达式的真假来执行不同的代码块。Go语言提供了if语句和switch语句来实现条件控制。

1. if 语句

if语句是Go语言中用于条件控制的基本语句。它的基本形式如下:

if condition {  
    // 如果condition为真,则执行这里的代码  
} else if anotherCondition {  
    // 如果上面的condition为假,但anotherCondition为真,则执行这里的代码  
} else {  
    // 如果所有的condition都为假,则执行这里的代码(可选)  
}  

示例:

package main  
  
import "fmt"  
  
func main() {  
    score := 85  
  
    if score >= 90 {  
        fmt.Println("优秀")  
    } else if score >= 60 {  
        fmt.Println("及格")  
    } else {  
        fmt.Println("不及格")  
    }  
}  

2. switch 语句

switch语句是另一种用于条件控制的结构,它允许一个变量或表达式的值与多个case子句进行匹配。如果找到匹配项,则执行该case子句中的代码。Go语言的switch语句非常灵活,它不仅可以用于整数、浮点数等,还可以用于字符串和布尔值,甚至不需要显式地提供每个case后面的条件表达式(即“隐式switch”或“类型switch”)。

基本形式:

switch expression {  
case value1:  
    // 如果expression等于value1,则执行这里的代码  
case value2:  
    // 如果expression等于value2,则执行这里的代码  
...  
default:  
    // 如果没有任何case匹配,则执行这里的代码(可选)  
}  

隐式(或类型)switch形式:

switch variable.(type) {  
case type1:  
    // 如果variable的类型是type1,则执行这里的代码  
case type2:  
    // 如果variable的类型是type2,则执行这里的代码  
...  
default:  
    // 如果variable不是上述任何类型,则执行这里的代码(可选)  
}  

示例(基本形式):

package main  
  
import "fmt"  
  
func main() {  
    grade := "B"  
  
    switch grade {  
    case "A":  
        fmt.Println("优秀")  
    case "B", "C":  
        fmt.Println("良好")  
    case "D":  
        fmt.Println("及格")  
    default:  
        fmt.Println("不及格")  
    }  
}  

示例(隐式switch):

package main  
  
import (  
    "fmt"  
)  
  
func do(i interface{}) {  
    switch v := i.(type) {  
    case int:  
        fmt.Printf("Two integers: %d\n", v)  
    case string:  
        fmt.Printf("A string: %s\n", v)  
    default:  
        fmt.Printf("I don't know about type %T!\n", v)  
    }  
}  
  
func main() {  
    do(21)  
    do("hello")  
    do(true)  
}  

在上面的隐式switch示例中,do函数接收一个interface{}类型的参数i,并使用switch语句来确定i的实际类型,并执行相应的代码块。注意,对于true(布尔值),它不会匹配任何case,因此会执行default分支。

推荐主页
AnQiCMS建站 安企CMS建站 网站营销 安企cms仿站 George Soros 乔治·索罗斯 Benjamin Graham 本杰明·格雷厄姆 John Templeton 约翰·邓普顿 Peter Lynch 彼得·林奇 Warren Buffett 沃伦·巴菲特 GoPay Raycast Nintendo Meta 美联储 美式期权 美股做空 美股开户 分析方法 CTA策略 期货基础知识 基金基础知识 股票术语 交易策略 金融指数 金融市场 交易所 股票基础 多多招商团长 多多团长 多多买菜 请假条模板 猪粪烘干机 小型鸡粪烘干机 上海到吴忠物流专线 上海到中卫物流专线 上海到固原物流专线 上海到银川物流专线 上海到宁夏物流专线 知乎seo 拼多多团长 自学做网站 学做网站 华为 OpenAI 马斯克 三星 Go语言 Golang Golang语言 小红书带货笔记 小红书带货 wordpress教程 WordPress建站服务器 WordPress建站教程 WordPress建站服务 WordPress建站公司 小红书笔记带货 抖音客服 抖音视频 抖音软件 快手商家 快手极速版 快手网页版 抖音蓝v 抖音创作者服务中心 抖音创作者服务平台 抖音创作中心 抖音下载安装 58同城 抖音订单 抖音网页创作者中心 抖音网页版 番茄小说 抖音短视频 抖音创作者中心 抖音创作服务平台 抖音官网 抖音极速版 抖音直播 抖音下载 短视频IP孵化厂家 短视频IP孵化 快手电商 短视频IP 小红书推广 微信支付 宝塔软件 宝塔 wordpress模板 linux 云服务器 wordpress安装 阿里云建站 阿里云服务器 阿里云播放器