Go语言-条件判断语句

所有的编程语言中,都不可避免的需要使用判断语句。条件判断语句一般使用if或者switch实现。

1 if 语句

首先上一段代码:

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    const filename = "abc.txt"
    contents, err := ioutil.ReadFile(filename)

    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Printf("%s\n", contents)
    }
}

由上面的语句可知, if语句的使用不需要使用括号进行包裹。又,上面的语句可以改写为:

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

上述程序表明,if条件语句可以进行赋值,且后面可以执行多条语句。if条件语句中定义的变量,其有效期仅处于if语句块中。

2 switch语句

首先还是先上一段代码:

package main

func eval (a,b int, op string) int {
    var result int

    switch op{
    case "+":
        result = a + b
    case "-":
        result = a-b
    default:
        panic ("unsupported operator: "+ op)
    }
    return result
}

func main() {
    println(eval(1,2,"-"))
}

由上述代码可以发现,区别于其他的语言,Go语言中不需要在每个case后面打break!

switch后可以没有表达式,只在case后面直接打表达式即可。例如:

func grade(score int) string {
    switch {
    case score<60:
          return "F"
    case score<80:
        return "C"
    ...
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,195评论 0 13
  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 2,849评论 2 9
  • 天气终于凉爽了 早晚还需要穿上外套才好 建设西路两旁的青砖 多了些许树叶的秋黄 我在那路旁的石凳上坐的少了 秋风萧...
    落魄书僮阅读 570评论 2 13
  • 我们通过四点来分析您就会知道答案了,一、对金钱的思维方式 二、看待问题的角度 三、理财的方式 四、对待人生的选择 ...
    4caf41720d9d阅读 340评论 1 0
  • 创业是踩着坑过来的,能少踩几个,兴许速度快些,成功机会大点。 这篇说的3个坑,每一个我们都不止踩了一次,教训很深刻...
    双宝饭阅读 366评论 0 1