ホームページ バックエンド開発 Golang Go言語でのifの使い方

Go言語でのifの使い方

Jan 30, 2023 pm 06:49 PM
golang 言語を移動

Go 言語では、キーワード if は、特定の条件 (ブール値または論理値) が true であるかどうかをテストするために使用されます。条件が true の場合、中括弧 "{}" が続く if が実行されます。それ以外の場合、コード ブロックは無視され、後続のコードが実行されます。構文は「if 条件 {...}」です。 if ステートメントは 1 つの分岐を選択するために使用されます。2 番目の分岐がある場合は、else キーワードとともに使用する必要があります。さらに分岐がある場合は、「else if」キーワードとともに使用する必要があります。

Go言語でのifの使い方

このチュートリアルの動作環境: Windows 7 システム、GO バージョン 1.18、Dell G3 コンピューター。

Go 言語 if else (分岐構造)

Go 言語では、キーワード if がテストに使用されます。特定の条件 (ブール型または論理型) を持つステートメント。条件が true の場合、if の後の中括弧 {} で囲まれたコード ブロックが実行されます。それ以外の場合、コード ブロックは無視され、後続の実行は続行されます。

if condition {
    // do something
}
ログイン後にコピー

2 番目の分岐がある場合は、上記のコードに基づいて else キーワードと別のコード ブロックを追加できます。このコード ブロックのコードは、条件が満たされない場合にのみ実行されます。 else の後の 2 つのコード ブロックは独立した分岐であり、そのうちの 1 つだけを実行できます。

if condition {
    // do something
} else {
    // do something
}
ログイン後にコピー

if else ステートメントは if ステートメントのアップグレード バージョンです。式が true のときに実行されるコードだけでなく、式が true のときに実行されるコードも指定できます。 not true

3 番目の分岐がある場合は、次の形式の 3 つの独立した分岐を使用できます。

if condition1 {
    // do something
} else if condition2 {
    // do something else
}else {
    // catch-all or default
}
ログイン後にコピー

else if キーワードは、if の条件のときに使用されます。ステートメントが満たされていない場合は、else if 内の論理判定を実行し続け、条件が満たされた場合は、else if 中括弧内のロジックを実行します。

else if ステートメントは、if ステートメントの中括弧の後にのみ記述でき、else if ステートメントはいくつでも記述できます。

else if 分岐の数に制限はありませんが、コードを読みやすくするため、if の後に else if 構造をあまり追加しないほうがよいでしょう。この形式を使用する必要がある場合は、次の条件を満たすようにしてください。要件を最初に、条件を前にします。

キーワード if および else{ の後の左中括弧は、キーワードと同じ行にある必要があります。else if 構造を使用する場合は、前のコードの右中括弧block }は else if キーワードと同じ行にある必要があります。これら 2 つのルールはコンパイラによって強制されます。

不正な Go コード:

if x{
}
else { // 无效的
}
ログイン後にコピー

gofmt を使用してコードをフォーマットした後、各ブランチのコードは 4 つまたは 8 つのスペースでインデントされることに注意してください。または 1 つのタブ、右中括弧 } は対応する if キーワードと垂直方向に揃えられます。

場合によっては、条件ステートメントの両側のかっこを省略できます。条件が複雑な場合は、かっこを使用すると、コードが読みやすくなります。&&、|| を使用するときにかっこを使用できます。または! 式の操作の優先順位を上げ、コードの可読性を向上させるため。

次の例を使用して、if の書き方を理解します。

var ten int = 11
if ten > 10 {
    fmt.Println(">10")
} else {
    fmt.Println("<=10")
}
ログイン後にコピー

コード出力は次のとおりです。

>10
ログイン後にコピー

コードの説明は次のとおりです。

  • 1行目、整数変数を宣言し、値11を割り当てます。

  • 行 2、10 の値が 10 より大きいかどうかを判断し、行 3 を実行します。それ以外の場合は行 4 を実行します。

  • 行 3 と行 5 は、出力がそれぞれ 10 より大きい場合と 10 以下の場合に出力を出力します。

#特殊な記述方法

特殊な記述方法がある場合は、実行文を実行文の前に追加することもできます。 if 式を実行し、変数の値に基づいて判断するコードは次のとおりです。

if err := Connect(); err != nil {
    fmt.Println(err)
    return
}
ログイン後にコピー
Connect は戻り値のある関数、err:=Connect() はステートメント、Connect 実行後、エラーerr変数に保存されます。

err != nil は if の判定式で、err が空でない場合はエラーを出力して返します。

この書き方では戻り値と判定を1行で処理でき、戻り値の範囲はif文とelse文の組み合わせに限定されます。

ヒント

プログラミングでは、変数のスコープが小さいほど、問題が発生する可能性が低くなります。各変数は状態を表し、状態がある場所はどこにあるのかを表します。 、ステータスが変更されます。関数のローカル変数は 1 つの関数の実行にのみ影響しますが、グローバル変数はすべてのコードの実行ステータスに影響を与える可能性があります。したがって、変数の範囲を制限することは、関数の安定性に非常に役立ちます。コード。

【関連する推奨事項:

Go ビデオ チュートリアル プログラミング教育

以上がGo言語でのifの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Redisストリームを使用してGO言語でメッセージキューを実装する場合、user_idタイプの変換の問題を解決する方法は? Redisストリームを使用してGO言語でメッセージキューを実装する場合、user_idタイプの変換の問題を解決する方法は? Apr 02, 2025 pm 04:54 PM

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

Go's Crawler Collyのキュースレッドの問題は何ですか? Go's Crawler Collyのキュースレッドの問題は何ですか? Apr 02, 2025 pm 02:09 PM

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

Golandのカスタム構造ラベルが表示されない場合はどうすればよいですか? Golandのカスタム構造ラベルが表示されない場合はどうすればよいですか? Apr 02, 2025 pm 05:09 PM

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

GOの浮動小数点番号操作に使用されるライブラリは何ですか? GOの浮動小数点番号操作に使用されるライブラリは何ですか? Apr 02, 2025 pm 02:06 PM

GO言語の浮動小数点数操作に使用されるライブラリは、精度を確保する方法を紹介します...

GOのどのライブラリが大企業によって開発されていますか、それとも有名なオープンソースプロジェクトによって提供されていますか? GOのどのライブラリが大企業によって開発されていますか、それとも有名なオープンソースプロジェクトによって提供されていますか? Apr 02, 2025 pm 04:12 PM

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

Golang Generic Function Typeの制約がVSCodeで自動的に削除されるという問題を解決する方法は? Golang Generic Function Typeの制約がVSCodeで自動的に削除されるという問題を解決する方法は? Apr 02, 2025 pm 02:15 PM

VSCODEユーザーのGolang Generic Function Typeの制約の自動削除は、VSCODEを使用してGolangコードを書くときに奇妙な問題に遭遇する可能性があります。いつ...

GOプログラミングでは、MySQLとRedisの間で接続を正しく管理し、リソースをリリースする方法は? GOプログラミングでは、MySQLとRedisの間で接続を正しく管理し、リソースをリリースする方法は? Apr 02, 2025 pm 05:03 PM

GOプログラミングのリソース管理:MySQLとRedisは、特にデータベースとキャッシュを使用して、リソースを正しく管理する方法を学習するために接続およびリリースします...

Golangの目的:効率的でスケーラブルなシステムの構築 Golangの目的:効率的でスケーラブルなシステムの構築 Apr 09, 2025 pm 05:17 PM

GO言語は、効率的でスケーラブルなシステムの構築においてうまく機能します。その利点には次のものがあります。1。高性能:マシンコードにコンパイルされ、速度速度が速い。 2。同時プログラミング:ゴルチンとチャネルを介してマルチタスクを簡素化します。 3。シンプルさ:簡潔な構文、学習コストとメンテナンスコストの削減。 4。クロスプラットフォーム:クロスプラットフォームのコンパイル、簡単な展開をサポートします。

See all articles