目次
フロー制御ステートメント
if ステートメント
Go言語ではifの後に実行文を追加することができ、実行文を使ってif条件を判定することもできます。その構文形式は次のとおりです。
if a := condition(); a == nil {
//代码块
}
aにcondition()メソッドの結果を代入し、aとnilを判定させ、trueの場合はコードブロック内のコードが実行され、そうでない場合は実行されず、aのスコープのみが実行されます。このステートメントの範囲内に含まれます。
if...else ステートメント
2 番目の分岐がある場合は、上のコードの上に else ステートメントと別のコード ブロックを追加できます。このコード ブロック内のコードは、条件が満たされない場合にのみ実行されます。if と else の 2 つのコード ブロックは独立した分岐であり、そのうちの 1 つだけを実行できます。構文形式は次のとおりです。
if condition {
//代码块
} else {
//代码块
}
switch ステートメント
switch ステートメントは複数分岐の選択に使用されますが、Go 言語の switch ステートメントは他の言語に比べて汎用的であり、式の値は定数である必要はなく、整数である必要もありません。その構文形式は次のとおりです。
switch expression {
case value1:
//代码块
case value2:
//代码块
default:
//代码块
}
式は式であり、値 1、値 2 などが考えられる値です。式がいずれかの値と等しい場合、対応するコード ブロックが実行されます。どれも一致しない場合は、デフォルトのコード ブロックが実行されます。
Go 言語では、case と case は独立したコード ブロックであり、デフォルトでは各 case にブレークが付いているため、ユーザーがブレークを記述する必要はありません。実行後に各ケースを自動的に終了する必要がない場合は、フォールスルーを使用して、実行されていないケース コードを強制的に実行できます。
d := 2
switch d {
case 1:
fmt.Print("星期一")
case 2:
fmt.Print("星期二")
fallthrough
case 3:
fmt.Print("星期三")
default:
//代码块
}
出力結果は火曜日と水曜日です
for ループ
for ステートメントはループ処理に使用されるステートメントであり、その文法形式は次のとおりです。
for initialization; condition; post {
//代码块
}
initialization は初期化ステートメント、condition はループ条件、post は各ループの終了後に実行されるステートメントです。条件が true の場合、コード ブロック内のコードが実行され、次に post ステートメントが実行され、条件が true かどうかが再度判断され、条件が false になるまで繰り返されます。
無限ループ:
for {
//代码块
}
式 2 が省略された場合、これは無限ループとなり、ループから抜け出すために Break ステートメントが使用されない限り、コード ブロック内のコードは常に実行されます。
ブレークステートメント
Go 言語の Break ステートメントは、ループまたはスイッチのコード ブロックから飛び出すことができます。また、ブレークの後にラベルを追加して、特定のラベルで指定されたコード ブロックを終了することもできます。その構文形式は次のとおりです。
for condition {
//代码块
if condition2 {
break
}
}
条件 2 が満たされると、ループから抜け出します。
継続ステートメント
continue ステートメントは、現在のループをスキップして次のループに入るために使用され、for ループ内で使用できます。その構文形式は次のとおりです。
for condition {
//代码块
if condition2 {
continue
}
}
条件 2 が満たされると、現在のサイクルがスキップされ、次のサイクルが開始されます。
goto ステートメント
Go 言語では、goto を使用してラベルをジャンプしたり、コード間をジャンプしたりできます。その構文形式は次のとおりです。
label:
//代码块
goto label
ここで、 label は識別子であり、任意の文字列を使用できます。goto ステートメントが実行されると、指定されたラベルにジャンプしてコードが実行されます。goto ステートメントの使用は、コードの可読性と保守性の低下につながりやすいため、可能な限り避ける必要があることに注意してください。