Go言語のswitch文の基本
Go言語のswitch
文は、他の多くのプログラミング言語と同様に、複数の条件を効率的にチェックするための制御構造です。基本的な構文は以下のようになります。
switch 変数 {
case 値1:
// 値1の場合に実行するコード
case 値2:
// 値2の場合に実行するコード
default:
// どのcaseにも該当しない場合に実行するコード
}
この構文では、switch
の後に指定した変数の値が、各case
で指定した値と一致するかどうかをチェックします。一致するcase
が見つかった場合、そのcase
のコードブロックが実行され、switch
文全体から抜け出します。どのcase
にも一致しない場合は、default
のコードブロックが実行されます。
次に、具体的な例を見てみましょう。
i := 2
switch i {
case 1:
fmt.Println("one")
case 2:
fmt.Println("two")
default:
fmt.Println("not one or two")
}
このコードでは、変数i
の値が2
なので、"two"
が出力されます。もしi
の値が1
でも2
でもない場合、"not one or two"
が出力されます。
以上がGo言語のswitch
文の基本的な使い方です。次のセクションでは、switch
文で変数を使用する方法について詳しく説明します。お楽しみに!
Go言語のswitch文での変数の使用
Go言語のswitch
文では、case
文で直接値を指定するだけでなく、変数を使用することも可能です。これにより、より複雑な条件分岐を実現することができます。
以下に、変数を使用したswitch
文の例を示します。
i := 2
j := 3
switch {
case i > j:
fmt.Println("i is greater than j")
case i < j:
fmt.Println("i is less than j")
default:
fmt.Println("i is equal to j")
}
このコードでは、switch
文の後に特定の変数を指定していません。その代わりに、各case
文で直接条件式を指定しています。この条件式がtrue
を返すと、そのcase
のコードブロックが実行されます。
この例では、変数i
の値が2
で、変数j
の値が3
なので、"i is less than j"
が出力されます。
以上がGo言語のswitch
文での変数の使用方法です。次のセクションでは、switch
文で条件式を使用する方法について詳しく説明します。お楽しみに!
Go言語のswitch文での条件式の使用
Go言語のswitch
文では、case
文で条件式を使用することができます。これにより、より複雑な条件分岐を実現することができます。
以下に、条件式を使用したswitch
文の例を示します。
i := 10
switch {
case i%2 == 0:
fmt.Println("i is even")
case i%2 != 0:
fmt.Println("i is odd")
}
このコードでは、switch
文の後に特定の変数を指定していません。その代わりに、各case
文で直接条件式を指定しています。この条件式がtrue
を返すと、そのcase
のコードブロックが実行されます。
この例では、変数i
の値が10
なので、"i is even"
が出力されます。
以上がGo言語のswitch
文での条件式の使用方法です。次のセクションでは、switch
文でのbreak
とfallthrough
の使用方法について詳しく説明します。お楽しみに!
Go言語のswitch文でのbreakとfallthroughの使用
Go言語のswitch
文では、break
とfallthrough
という2つのキーワードを使用することができます。これらは、switch
文の動作を制御するための重要な要素です。
breakの使用
多くのプログラミング言語では、switch
文の各case
の終わりにbreak
を書くことで、それ以上のcase
のチェックをスキップし、switch
文から抜け出します。しかし、Go言語では、各case
の終わりに自動的にbreak
が挿入されるため、明示的にbreak
を書く必要はありません。
fallthroughの使用
一方、Go言語ではfallthrough
というキーワードを使用することで、次のcase
のチェックを強制的に行うことができます。これは、他の言語のswitch
文でbreak
を省略したときの動作に似ています。
以下に、fallthrough
を使用したswitch
文の例を示します。
i := 1
switch i {
case 1:
fmt.Println("one")
fallthrough
case 2:
fmt.Println("two")
}
このコードでは、変数i
の値が1
なので、最初のcase
のコードブロックが実行され、"one"
が出力されます。その後、fallthrough
により、次のcase
のコードブロックも実行され、"two"
も出力されます。
以上がGo言語のswitch
文でのbreak
とfallthrough
の使用方法です。次のセクションでは、switch
文でのマルチケースの使用方法について詳しく説明します。お楽しみに!
Go言語のswitch文でのマルチケースの使用
Go言語のswitch
文では、複数の値に対応するcase
を一つのcase
文で表現することができます。これをマルチケースと呼びます。
以下に、マルチケースを使用したswitch
文の例を示します。
i := 2
switch i {
case 1, 2, 3:
fmt.Println("one, two, or three")
default:
fmt.Println("not one, two, or three")
}
このコードでは、変数i
の値が1
、2
、または3
のいずれかであれば、"one, two, or three"
が出力されます。それ以外の値であれば、"not one, two, or three"
が出力されます。
以上がGo言語のswitch
文でのマルチケースの使用方法です。このように、Go言語のswitch
文は非常に柔軟性があり、さまざまな条件分岐を表現することが可能です。これらのテクニックを活用して、効率的なコードを書くことができます。お楽しみに!