Go は静的型付けで、変数を宣言する複数の方法があります。最も一般的なのは短い宣言 := で、型を推論します。Go の基本型は数値、文字列、ブール値など様々です。
変数の宣言
go
x =
y =
z
name :=
count :=
a, b = ,
Pi =
:= は関数内での慣用的な方法です — 型推論で簡潔です。var はパッケージレベルで、明示的な型を指定したい場合やゼロ値だけが必要な場合に使われます。
// integers
int, int8, int16, int32, int64 // signed (int is platform-sized, usually 64-bit)
uint, uint8, ..., uint64 // unsigned
byte // alias for uint8
rune // alias for int32 — a Unicode code point
// floating point
float32, float64 // float64 is the default for decimals
// others
string // immutable UTF-8 text
bool // true / false
complex64, complex128 // complex numbers
var i int // 0
var f float64 // 0.0
var s string // "" (empty)
var b bool // false
var p *int // nil
Go の重要な機能:宣言されたすべての変数は自動的に適切なゼロ値を取得します — 未定義/ゴミ値は存在しません。これによりコードがより安全になり、明示的な初期化をスキップできることが多いです。
var i int = 42
var f float64 = float64(i) // MUST convert explicitly — no implicit coercion
var u uint = uint(f)
// i + f → ❌ compile error: mismatched types
Go は明示的な型変換が必須です — 型を暗黙的に混在させることはなく、微妙なバグのクラスを防ぎます。
Go の変数宣言と型を理解することは、すべての Go コードを書くための基本です。
慣用的な := 短い宣言は型推論でコードを簡潔に保ち、var と定数はそれぞれの役割を果たします。
ゼロ値の保証(すべての変数は安全に初期化される)は Go 独特で重要な特性で、初期化されていない変数のバグを排除し、慣用的なパターンを形作ります(例えば、ゼロ値の struct はしばしば使用可能です)。
そして Go の明示的な型変換への固執(暗黙的な強制変換なし)は、他の言語が許す静かな数値バグを防ぐ意図的なセーフティ選択です。
基本型を知ること(特に Unicode の rune、byte、デフォルトが int/float64 であること)は、日常に必須な知識です。
ジュニアからシニアまで、詳細な回答付きのIT面接質問ライブラリ。
寄付する