• Go 语言循环语句


    Go语言提供了多种循环语句,用于重复执行一段代码块。以下是Go语言中常用的循环语句:

    1. for 循环:

    True
    False
    初始化语句
    条件
    执行循环体
    执行循迭代语句
    结束
    • for 循环用于重复执行一段代码块,通常用于处理集合元素、计数等任务。
    for initialization; condition; post {
        // 循环体
    }
    
    • 1
    • 2
    • 3

    示例:

    for i := 0; i < 5; i++ {
        fmt.Println(i)
    }
    
    • 1
    • 2
    • 3

    for 循环可以用于不同的情况,如循环切片、数组、映射等,以及实现各种迭代操作。

    2. for 循环的无限循环形式:

    • 您可以使用 for 循环来创建一个无限循环,只需省略初始化、条件和后置表达式。
    for {
        // 无限循环体
    }
    
    • 1
    • 2
    • 3

    示例:

    for {
        fmt.Println("这是一个无限循环")
    }
    
    • 1
    • 2
    • 3

    要退出无限循环,通常需要使用 break 语句。

    3. range 循环:

    • range 循环用于迭代集合类型(如数组、切片、映射、字符串等)中的元素。
    for index, value := range collection {
        // 使用index和value处理每个元素
    }
    
    • 1
    • 2
    • 3

    示例:

    numbers := []int{1, 2, 3, 4, 5}
    for index, value := range numbers {
        fmt.Printf("索引:%d,值:%d\n", index, value)
    }
    
    • 1
    • 2
    • 3
    • 4

    4. while 循环模拟:

    • Go语言没有专门的 while 循环,但您可以使用 for 循环来模拟 while 循环,只需省略初始化和后置表达式。
    for condition {
        // 循环体
    }
    
    • 1
    • 2
    • 3

    示例:

    i := 0
    for i < 5 {
        fmt.Println(i)
        i++
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5

    5. do-while 循环模拟:

    • Go语言也没有专门的 do-while 循环,但您可以使用 for 循环来模拟 do-while 循环,将条件检查放在循环体后面。
    for {
        // 循环体
        if !condition {
            break
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    示例:

    i := 0
    for {
        fmt.Println(i)
        i++
        if i >= 5 {
            break
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    这些循环语句允许您实现不同类型的循环,根据具体需求来选择适当的循环形式。循环是编程中非常重要的控制结构,用于迭代、重复任务和条件检查。

    6. 循环控制语句

    在Go语言中,循环控制语句用于在循环中控制程序流程。以下是Go语言中的主要循环控制语句:

    1. break语句break语句用于立即终止当前的循环,无论循环条件是否满足。它通常用于在某个条件满足时提前退出循环。例如:

      for i := 0; i < 10; i++ {
          if i == 5 {
              break // 当 i 等于 5 时提前退出循环
          }
          fmt.Println(i)
      }
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
    2. continue语句continue语句用于跳过当前迭代中剩余的代码,立即进入下一次迭代。它通常用于跳过某些特定情况下的循环体执行。例如:

      for i := 0; i < 10; i++ {
          if i%2 == 0 {
              continue // 跳过偶数的打印
          }
          fmt.Println(i)
      }
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
    3. goto语句goto语句用于无条件地跳转到程序中的一个标签。尽量避免使用goto,因为它可以导致代码难以理解和维护。

      for i := 0; i < 10; i++ {
          if i == 5 {
              goto EndLoop
          }
          fmt.Println(i)
      }
      EndLoop:
      fmt.Println("循环结束")
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8

    注意:虽然goto语句在Go语言中是合法的,但通常不建议使用它,因为它可以使代码难以理解和调试。应尽量使用breakcontinue来实现控制流程。

    这些循环控制语句用于更精细地控制循环的执行流程,根据特定条件提前退出循环或跳过某些迭代。请根据您的编程需求使用适当的循环控制语句。

  • 相关阅读:
    GYM 103371 B - Cilantro
    docker方式安装单节点MongoDB(4.0.9)
    kubernetes集群编排(6)
    8.3 NtGlobalFlag
    MySQL 事务和锁
    open cv快速入门系列---数字图像基础
    Gartner权威报告解读:探究应用可观测性的发展
    python3.8,torch1.10.2+cu113、torch-geometric 安装
    秋招每日一题T31——二叉搜索子树的最大键值和
    基于java体育资讯网站
  • 原文地址:https://blog.csdn.net/MikeaLi/article/details/134269620