← Go コース
8. 定数と iota — const による連番の定義
変わらない値には const を使って定数を定義します。const Pi = 3.14 のように書くと、その値を後から書き換えることはできません。定数はコンパイル時に決まる値である必要があり、文字・文字列・数値・真偽値などを表せます。型を書かない定数は使われる文脈に応じて柔軟に扱われます。
連続した値をまとめて定義したいときに便利なのが iota です。const のブロックの中で iota を使うと、最初の行が 0、次の行が 1、その次が 2…と自動的に増えていく整数を生成できます。これは曜日や状態など、一連の名前付き定数(列挙のようなもの)を簡潔に書くのに使われます。
下の例では Sunday から始めて iota で曜日に 0 から順に番号を振っています。2 行目以降は式を省略でき、直前の式(= iota)が繰り返されるため、各行に値を書かなくても連番になります。
▶ サンプルコードを実行してみよう(自由に書き換えてOK)
Go