Go言語のジャンプステートメントとは何ですか?
jump ステートメントには次のものが含まれます: 1. Break ステートメントは、ループを終了するか、switch ステートメントを終了してプログラムがループ後にコードの実行を続行できるようにするために使用されます。構文は "break;" です。 continue ステートメントは、今回を終了するために使用されます。ループして次のループを開始する、構文は "Continue;"; 3. ラベルと組み合わせて、指定したラベル ステートメントにジャンプする、構文は "label:"; 4. goto文は、プログラム中の指定した行に無条件で移動するために使用します、構文「gotoタグ;... ...タグ:式;」。
このチュートリアルの動作環境: Windows 7 システム、GO バージョン 1.18、Dell G3 コンピューター。
Go フロー制御の Jump ステートメント
break ステートメントと continue ステートメント
その他 プログラミングと同様Go 言語では、break ステートメントによるループの抜け出しと continue ステートメントによる次のループへの開始をサポートしています。
break の基本的な使用例は、前のチュートリアルですでに説明しました。break のデフォルトのスコープは、ステートメントが配置されている最も内側のループ本体です:
arr := [][]int{{1,2,3},{4,5,6},{7,8,9}} for i := 0; i < 3; i++ { for j := 0; j < 3; j++ { num := arr[i][j] if j > 1 { break } fmt.Println(num) } }
たとえば、ここにある Breakその意味は、j > 1 の場合は最も内側のループを終了し、そうでない場合は現在の位置の数値を出力することです。
Continue は、残りのループ本体を無視して、次のループ処理に直接入るために使用されます。
arr := [][]int{{1,2,3},{4,5,6},{7,8,9}} for i := 0; i < 3; i++ { for j := 0; j < 3; j++ { num := arr[i][j] if j > 1 { break } else { continue } fmt.Println(num) } }
プログラムを次のように書き直すと、上記のコードは値を出力しません。ステートメントは後続のコードを無視し、次のループに直接進みます。
tag
Go 言語と他の言語における Break と continue の違いは、指定されたタグ ステートメントにジャンプするためのタグとの組み合わせをサポートしていることです。これら 2 つ ステートメントのデフォルトのジャンプ ロジックであるラベル ステートメントは、 タグを通じて宣言されます:
:
arr := [][]int{{1,2,3},{4,5,6},{7,8,9}} ITERATOR1: for i := 0; i < 3; i++ { for j := 0; j < 3; j++ { num := arr[i][j] if j > 1 { break ITERATOR1 } fmt.Println(num) } }
このようにして、最初に現在のループ本体を終了した Break ステートメントは、次のループにジャンプします。 ITERATOR1 ラベルの対応する位置なので、対応する出力結果は次のようになります:
1 2
この時点で、break は外側のループから直接飛び出すため、break が継続するように変更された場合、出力結果は次のようになります:
1 2 4 5 7 8
goto ステートメント
goto ステートメントはほとんどの言語学者によって反対されており、コード ロジックで混乱を引き起こしやすいため、誰もが使用しないように警告されています。見つけにくいバグにつながります。ただし、Go 言語はまだ goto キーワードをサポートしています。goto ステートメントのセマンティクスは非常に単純で、この関数内の特定のラベルにジャンプします。
arr := [][]int{{1,2,3},{4,5,6},{7,8,9}} for i := 0; i < 3; i++ { for j := 0; j < 3; j++ { num := arr[i][j] if j > 1 { goto EXIT } fmt.Println(num) } } EXIT: fmt.Println("Exit.")
When the first time j > 1
条件の場合、コードは EXIT
タグで指定された場所にジャンプし、後続のコードの実行を続行するため、上記のコードの出力は次のようになります:
1 2 Exit.
[関連する推奨事項: Go ビデオ チュートリアル 、プログラミング教育 ]
以上がGo言語のジャンプステートメントとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Go Crawler Collyのキュースレッドの問題は、Go言語でColly Crawler Libraryを使用する問題を調査します。 �...

Golandのカスタム構造ラベルが表示されない場合はどうすればよいですか?ゴーランドを使用するためにGolandを使用する場合、多くの開発者はカスタム構造タグに遭遇します...

Go言語での文字列印刷の違い:printlnとstring()関数を使用する効果の違いはGOにあります...

大企業または有名なオープンソースプロジェクトによって開発されたGOのどのライブラリが開発されていますか? GOでプログラミングするとき、開発者はしばしばいくつかの一般的なニーズに遭遇します...

redisstreamを使用してGo言語でメッセージキューを実装する問題は、GO言語とRedisを使用することです...

GO言語で構造を定義する2つの方法:VARとタイプのキーワードの違い。構造を定義するとき、GO言語はしばしば2つの異なる執筆方法を見ます:最初...

マルチプロセスのログライティングの並行性セキュリティの問題を効率的に処理します。複数のプロセスが同じログファイルを同時に書き込みます。並行性が安全で効率的であることを確認する方法は?これは...
