Go 语言循环语句

在编程中,循环是一种基本的控制结构,它允许我们重复执行一段代码直到满足某个条件。Go 语言提供了几种不同的循环语句来实现这一目的。本章将详细介绍 Go 语言中的各种循环结构,包括 for 循环、while 循环以及 breakcontinue 关键字。

for 循环

for 循环是 Go 语言中最常用的循环结构。它可以用来创建一个简单的计数循环,也可以用来替代其他语言中的 while 循环。

基本形式

最基本的 for 循环形式如下:

例如,我们可以使用 for 循环来打印从 1 到 5 的数字:

-- -------------------- ---- -------
------- ----

------ -----

---- ------ -
    --- - -- -- - -- -- --- -
        --------------
    -
-

无限循环

如果省略了初始化语句、条件表达式或后续操作,for 循环将变成无限循环。无限循环通常用于需要手动中断的情况,比如在网络编程中处理连接。

-- -------------------- ---- -------
------- ----

------ -----

---- ------ -
    - -- -
    --- -
        -- - -- - -
            -----
        -
        --------------
        ---
    -
-

在这个例子中,我们通过 break 关键字来终止无限循环。

while 循环

虽然 Go 语言没有显式的 while 循环关键字,但可以通过 for 循环来模拟 while 循环的行为。while 循环只检查条件表达式,并且不包含初始化语句和后续操作部分。

-- -------------------- ---- -------
------- ----

------ -----

---- ------ -
    - -- -
    --- - - - -
        --------------
        ---
    -
-

这段代码等同于下面的 while 循环:

-- -------------------- ---- -------
------- ----

------ -----

---- ------ -
    - -- -
    --- -
        -- - -- - -
            -----
        -
        --------------
        ---
    -
-

break 和 continue 关键字

breakcontinue 是控制循环流程的关键字,它们可以改变循环的执行路径。

break 关键字

break 关键字用于立即退出循环。当在嵌套循环中使用时,它默认只跳出最内层的循环,除非指定了标签名。

-- -------------------- ---- -------
------- ----

------ -----

---- ------ -
    --- - -- -- - - -- --- -
        --- - -- -- - - -- --- -
            -- - -- - -
                -----
            -
            -------------- --- -- ------ -- --
        -
    -
-

输出结果为:

可以看到,当 j 等于 1 时,循环会跳出当前的内层循环,但是外层循环继续执行。

continue 关键字

continue 关键字用于跳过当前循环体剩余的部分并立即开始下一次迭代。

-- -------------------- ---- -------
------- ----

------ -----

---- ------ -
    --- - -- -- - - -- --- -
        -- - -- - -
            --------
        -
        --------------
    -
-

输出结果为:

可以看到,当 i 等于 1 时,continue 关键字使得循环直接跳到下一次迭代,因此 1 没有被打印出来。

循环中的标签

在 Go 中,我们可以在循环前添加标签,这使得我们可以更灵活地控制循环的退出。这对于处理多层循环尤其有用。

-- -------------------- ---- -------
------- ----

------ -----

---- ------ -
    ----------
    --- - -- -- - - -- --- -
        ----------
        --- - -- -- - - -- --- -
            -- - -- - -- - -- - -
                --------------- --- ----
                -------- ---------
            -
            -------------- --- -- ------ -- --
        -
    -
-

在这个例子中,我们定义了一个外部循环标签 OuterLoop 和一个内部循环标签 InnerLoop。当遇到 (1, 1) 时,我们使用 continue InnerLoop 跳过当前的内部循环迭代。

总结

Go 语言通过 for 循环提供了一种非常灵活的方式来处理循环逻辑。通过合理运用 breakcontinue 关键字以及循环标签,我们可以轻松地控制循环的执行流程,从而编写出更加高效和优雅的代码。

上一篇: Go 语言条件语句
下一篇: Go 语言函数
纠错
反馈