条件控制

作者: __apple | 来源:发表于2018-05-26 11:16 被阅读0次

每种语言都有条件控制语句,既然大家都有一定的编程经验了,那我们就来点Go不一样的东西,就不中规中矩的讲if else 是什么了,我们直接上一段读取文件内容的代码

const filename = "learn.txt"
if contents, err := ioutil.ReadFile(filename); err != nil {
   fmt.Println(err)
} else {
   fmt.Printf("%s\n", contents)
}

上面的这段代码,ioutil.ReadFile是用来读取文件内容的,它返回了两个值,所以我们需要用两个值进行接受,怎么样,这里是不是与其他的编程语言不太一样了呢,其他的语言还得try except, 我们这里不用这么捕获错误,直接在返回值里面加上就可以了,也许你现在还不能适应这种写法,不过等你写的多了,你会发现这样真的很方便,if后面是不需要括号的,其实if else 在上面这种使用场景还是很多的,要好好的看一下。
下面我们要讲的是switch,这个在Python里面是没有的,当然可以使用其他的方法实现同样的功能,但是Go的switch与其他语言有点不同,它是自带break的,就是说当你的case有个满足条件以后,下面的case就不会在执行了,当然这里你可以使用fallthrough进行强行穿透,但是这个fallthrough也有缺点,就是它会强制执行下面的case就是说如果你在上一个case中加了fallthrough那么下面的case不论是否满足条件都会执行,这个其实并不是很好用,强烈建议如果有多层判断的需求并且希望可以执行多个结果时,直接用if
switch后面也可以为空比如:

func grade(score int) string {
    g := ""
    switch {
    case score < 0 || score > 100:
        panic(fmt.Sprintf(
            "Wrong score: %d", score))
    case score < 60:
        g = "F"
    case score < 80:
        g = "C"
    case score < 90:
        g = "B"
    case score <= 100:
        g = "A"
    }
    return g
}

怎么样学会了嘛, 学会了可以奖励自己买个switch玩一下,哈哈。。。。。。

相关文章

  • 条件控制

    每种语言都有条件控制语句,既然大家都有一定的编程经验了,那我们就来点Go不一样的东西,就不中规中矩的讲if el...

  • 条件控制

    package tiaojiankongzhi//---------------IF表达式----------/*...

  • 条件控制

    When 表达式 when 将它的参数和所有的分支条件顺序比较,直到某个分支满足条件。 when 既可以被当做表达...

  • 3.php流程控制

    条件控制语句 条件控制语句是根据条件选择执行不同的代码片段。条件控制语句分为四类:1)if 语句 -- 在条件...

  • Stylus预处理器简介(十)条件控制

    条件控制(CONDITIONALS) Stylus条件控制提供了语言的流控制,否则就是纯粹的静态语言。提供的条件有...

  • 从零开始学Kotlin-控制语句(4)

    从零开始学Kotlin基础篇系列文章 条件控制-if 条件控制-when 循环控制-for 循环控制-while/...

  • 「JS」语句

    条件控制语句 循环控制语句 for-in 异常处理语句 with语句 条件控制语句 其中expression可以使...

  • TASK 01 基础知识复习

    一、Python基础 列表 字典 控制流 条件控制留心条件短路特殊条件 循环控制 二、HTML学习 一个完整的ht...

  • 2018-12-11

    流程控制 流程控制语句:--条件判断语句--条件分支语句--循环语句 条件判断语句(if语句) 语法:if(条件表...

  • Kotlin 条件控制

    IF 表达式 一个 if 语句包含一个布尔表达式和一条或多条语句。 IF 表达式的结果赋值给一个变量。 区间 使用...

网友评论

    本文标题:条件控制

    本文链接:https://www.haomeiwen.com/subject/ywnsrftx.html