#2 Goで学ぶ変数とデータ型の基本
Goの変数の作り方には、書き方が2種類あるという特徴があります。この記事では、Goにおける変数の作り方と、代表的なデータ型について解説します。
varを使った書き方
1つ目は、varというキーワードを使う書き方です。
var age int = 20
変数名、型、値の順に書きます。型を省略して、値から自動的に判断させることもできます。
var age = 20
:=を使った書き方
2つ目は、:=という記号を使う、より簡潔な書き方です。
age := 20
varとは書かずに、いきなり変数名と値を:=でつなぎます。関数の中で手軽に変数を作りたいときによく使われる書き方です。
代表的なデータ型
Goの基本的なデータ型には、次のようなものがあります。
- 整数(int)
- 浮動小数点数(float64)
- 文字列(string)
- 真偽値(bool)
「ゼロ値」という考え方
Goには「ゼロ値」という独特の仕組みがあります。これは、変数を値なしで宣言した場合に、型に応じた初期値が自動的に入るというものです。例えば整数型なら0、文字列型なら空文字、真偽値型ならfalseが自動で入ります。
var count int
// countには自動的に0が入る
「変数が初期化されていない」という状態が存在しないため、意図しない不具合を防ぎやすくなっています。
複数の変数をまとめて宣言する
varを使うと、複数の変数をまとめて宣言することもできます。
var (
name string = "太郎"
age int = 20
)
関連する設定値などをまとめて宣言したい場合に、見た目がすっきりします。
定数を表すconst
値を変更されたくない場合はconstを使います。
const MaxScore = 100
varと違い、constで宣言した値はコンパイル時に決まっている必要があり、実行中に計算した結果を代入することはできません。
Goならではの注意点
Goでは、宣言したのに一度も使っていない変数があると、実行前の段階でエラーになります。他の言語ではただの警告で済むことが多いため、Goを学び始めた人が最初に戸惑いやすいポイントです。使わない変数はきちんと削除する癖をつけましょう。
iotaによる連番定数
Goにはiotaという、連続した定数を簡潔に定義できる仕組みもあります。
const (
Sunday = iota // 0
Monday // 1
Tuesday // 2
)
曜日や状態のような、連番で管理したい定数を定義する際によく使われます。
まとめ
Goの変数はvarと:=という2つの書き方があり、関数の中では:=が好まれる傾向にあります。「ゼロ値」という仕組みと、未使用変数を許さない厳格さが、Goらしい特徴と言えるでしょう。
本ページはプロモーションを含みます。
参考書籍(PR)
Goをもっと学びたい方には「Go言語入門」がおすすめです。
PR
コードを書かずに自動化したい方へ
「学んだけど自分の作業に組み込む時間がない」という方向けに、ダブルクリックで動く Windows専用の自動化ツールをオーダーメイドで作成しています。気になる方は こちらをご覧ください。
コメント
コメントを投稿