zoukankan      html  css  js  c++  java
  • Go通关03:控制结构,if、for、switch逻辑语句

    if 条件语句

    func main() {
        i:=6
        if i >10 {
            fmt.Println("i>10")
        } else if i>5 && i<=10 {
            fmt.Println("5<i<=10")
        } else {
            fmt.Println("i<=5")
        }
    }
    

    注意:

    1. if 后的表达无 ‘( )’
    2. 每个条件分支中的 ‘{ }’ 是必须的。哪怕只有一行代码。
      3.if/else后的 ‘{’ 不能独占一行。否则编译不通过

    switch 选择语句

    if 条件语句比较适合分支比较少的情况。如果有很多分支,switch会更方便。

    switch i:=6;{
    case i > 10:
      fmt.Println("i>10")
    case i > 6 && i <= 10:
      fmt.Println("5<i<10")
    default:
      fmt.Println("i<=5")
    }
    

    注意: Go 语言为防止忘记写 break,case 后自带 break,这和其他语言不一样。

    如果确实需要执行下一个 case ,可以使用 fallthrough 关键字

    switch j:=1;j{
      case 1:
        fallthrough
      case 2:
        fmt.Println("1")
      default:
        fmt.Println("无匹配")
    }
    

    以上结果会输出 1。

    当switch之后有表达式时,case后的值就要和这个表达式的结果类型相同,比如这里 j 是 int 类型,所以 case 后就得使用 int 类型。

    for 循环语句

    for 循环由三部分组成,其中需要使用两个 ; 分割:

    sum := 0
    for i := 1; i <= 100; i++{
      sum += i
    }
    fmt.Println("sum:",sum)
    

    第一部分是简单语句
    第二部分是 for 循环的条件
    第三部分是更新语句
    这三部分组成都不是必须的,可以被省略。

    Go 语言中没有 while 循环,可以通过for达到while的效果:

    sum := 0
    i := 1
    for i <= 100 {
      sum += 1
      i++
    }
    

    Go 中,同样支持continue,break 控制for循环。

    1. continue 跳出本次循环,进入下次循环。
    2. break 强行退出整个循环。
  • 相关阅读:
    [剑指Offer] 从尾到头打印链表
    [剑指Offer] 替换空格
    [剑指Offer] 二维数组中的查找
    [LeetCode] 53. Maximum Subarray
    [LeetCode] 283. Move Zeroes
    haproxy + rabbitmq + keepalived的高可用环境搭建
    iis7下站点日志默认位置
    在vs2012中配置使用iisexpress
    tomcat配置域名,单项目指定多域名
    httpget和post
  • 原文地址:https://www.cnblogs.com/isungge/p/15089325.html
Copyright © 2011-2022 走看看