Go 语言函数式编程系列教程(十四) —— 流程控制篇:条件语句

栏目: Go · 发布时间: 4年前

内容简介:流程控制主要用于设定计算执行的次序,建立程序的逻辑结构。Go 语言的流程控制和 PHP 类似,支持如下的几种流程控制语句:在实际的使用中,往往会根据具体的业务逻辑,灵活组合上述控制语言来实现相应的功能。接下来,我们来简单介绍下各种流程控制语句的用法,首先从条件语句开始。条件语句的示例模板如下:

流程控制主要用于设定计算执行的次序,建立程序的逻辑结构。Go 语言的流程控制和 PHP 类似,支持如下的几种流程控制语句:

  • 条件语句:用于条件判断,对应的关键字有 ifelseelse if
  • 选择语句:用于分支选择,对应的关键字有 switchcaseselect (用于通道,后面介绍协程时会提到);
  • 循环语句:用于循环迭代,对应的关键字有 forrange
  • 跳转语句:用于代码跳转,对应的关键字有 goto

在实际的使用中,往往会根据具体的业务逻辑,灵活组合上述控制语言来实现相应的功能。

接下来,我们来简单介绍下各种流程控制语句的用法,首先从条件语句开始。条件语句的示例模板如下:

// if
if condition { 
    // do something 
}

// if...else...
if condition { 
    // do something 
} else {
    // do something 
}

// if...else if...else...
if condition1 { 
    // do something 
} else if condition2 {
    // do something else 
} else {
    // catch-all or default 
}

有其他编程语言基础的同学理解起来毫不费力,我们可以编写一个简单的条件语句示例代码如下:

score := 100
if score > 90 {
    fmt.Println("Grade: A")
} else if score > 80 {
    fmt.Println("Grade: B")
} else if score > 70 {
    fmt.Println("Grade: C")
} else if score > 60 {
    fmt.Println("Grade: D")
} else {
    fmt.Println("Grade: F")
}

这段代码可用于打印指定分数对应的等级。

与 PHP 相比,关于 Go 语言的条件语句,需要注意以下几点:

  • 条件语句不需要使用圆括号将条件包含起来 ()
  • 无论语句体内有几条语句,花括号 {} 都是必须存在的;
  • 左花括号 { 必须与 if 或者 else 处于同一行;
  • if 之后,条件语句之前,可以添加变量初始化语句,使用 ; 间隔,比如上述代码可以这么写 if score := 100; score > 90 {

以上所述就是小编给大家介绍的《Go 语言函数式编程系列教程(十四) —— 流程控制篇:条件语句》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Essential C++中文版

Essential C++中文版

[美] Stanley B. Lippman / 侯捷 / 华中科技大学出版社 / 2001-8 / 39.80元

书中以4个面向来表现C++的本质:procedural(程序性的)、generic(泛型的)、object-based(个别对象的)、object-oriented(面向对象的),全书围绕着一系列逐渐繁复的程序问题,以及用以解决这些问题的语言特性。循此方式,读者不只学到C++的函数和结构,也会学习到它们的设计目的和基本原理。一起来看看 《Essential C++中文版》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具