変数はどんなプログラミング言語にも欠かせないものです。ここでは、GoLangで変数をどのように使用するかを見ていきます。
Goは静的型付けされたプログラミング言語なので、変数の型はコンパイル前に推測されることになります。
キーワード「var」について
varキーワードは、変数を宣言するために使われます。
以下のコードは、Goでの変数宣言の方法を示しています。
package main
import "fmt"
func main() {
var name = "John Doe" // no type declaration
var username string = "John123" // type declaration
var numberOfPosts int // no initialization
fmt.Println(numberOfPosts) // prints 0
}
上のコードでは、nameが宣言され、varキーワードで初期化されていますが、型は宣言されていません。
初期化に文字列が使われているので、変数名は文字列になっています。Goは初期化から型を推測します。
変数初期化の省略構文
初期化の省略構文を使用すると、簡潔な方法で変数を初期化することができます。つまり、varを使ったり、変数のデータ型を宣言しなくても初期化できるということです。
それでは、この構文の使い方を見てみましょう。
package main
import "fmt"
func main() {
name := "Jane Doe" // notice the colon equal syntax
}
上のコードでは、その構文に注目してください。新しく追加されたのは := 演算子です。varキーワードと型指定子はもう必要ありません。
Go言語のデータ型
Goにはたくさんのデータ型があります。Int、float、string、booleans、その他の派生型もあります。
以下はサポートされているものです。
Ineger(数値): Int8, int16, int32, int64, uint8, uint16, uint32, uint64
Float: float32, float64, complex64, complex128 (Go supports complex numbers as well!)
byte (uint8), rune (int32), uint (32/64), int, uintptr などの数値型。
もちろん文字列もあります。また、以下のような派生型もあります。
ポインター、配列、構造体、ユニオン、関数、スライス、インターフェイス、マップ、チャンネルはすべて派生型です。
私たちの特定のニーズのために、非常に多くの異なるデータタイプがあります。そのため、Goのコードは完璧に書けます。また、静的な型付けにより、デバッグ作業も大幅に軽減されます。
このように、Goでの変数の宣言と使用はとても簡単です。