golangのタグにジャンプする方法

PHPz
リリース: 2023-05-15 09:14:36
オリジナル
595 人が閲覧しました

Go 言語のラベルを使用してジャンプを実装できます。ラベルはコロン (:) で終わる識別子であり、ループや分岐ステートメントを含む任意のステートメントの前に配置できます。

ラベル ジャンプを使用するための構文形式は次のとおりです。

label:

statement
ログイン後にコピー

ここで、label はラベル名、statement はステートメントです。ステートメント内で goto ステートメントを使用すると、指定したラベルにジャンプできます。

以下はサンプル コードです。

package main

import "fmt"

func main() {
    outerLoop:
    for i := 0; i < 5; i++ {
        for j := 0; j < 5; j++ {
            if i == 3 && j == 3 {
                goto outerLoop
            }
            fmt.Printf("(%d,%d) ", i, j)
        }
        fmt.Println()
    }
}
ログイン後にコピー

上記のコードでは、outerLoop が外側のループのラベルとして使用されています。 i と j が両方とも 3 に等しい場合、外側のループの開始位置である、outerLoop ラベルの位置にジャンプします。

出力結果は次のとおりです。

(0,0) (0,1) (0,2) (0,3) (0,4) 
(1,0) (1,1) (1,2) (1,3) (1,4) 
(2,0) (2,1) (2,2) (2,3) (2,4) 
(3,0) (3,1) (3,2) 
(0,0) (0,1) (0,2) (0,3) (0,4) 
(1,0) (1,1) (1,2) (1,3) (1,4) 
(2,0) (2,1) (2,2) (2,3) (2,4) 
(3,0) (3,1) (3,2) (3,3) (3,4) 
(4,0) (4,1) (4,2) (4,3) (4,4) 
ログイン後にコピー

出力結果から、i と j が両方とも 3 の場合、プログラムは、outerLoop ラベルの位置にジャンプし、外側のループを再開します。

ラベル ジャンプを使用すると、プログラムのロジックが明確になりますが、ラベル ジャンプを過度に使用すると、プログラムの保守が困難になる可能性もあります。したがって、タグ ジャンプを使用する場合は、悪用を避けるために慎重に検討する必要があります。

以上がgolangのタグにジャンプする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート