Goの変数定義の書き方はいくつかがあります。
Goの変数定義は柔軟性があります。
#単独変数の定義
##初期値なし変数
定義:var 変数名 変数型
例:
var s string
##初期値あり変数
定義: var 変数名 変数型 = 値
例:
var s string = "私の性別は男です。"
値から型を推測できるので、変数型を省略して書くことも可能です。
定義: var 変数名 = 値
例:
var s = "私の性別は男です。"
varキーワードは嫌な場合は、varを省略して書くことも可能です。
定義:変数名 := 値
例:
s := "私の性別は男です。"
#複数変数の定義
##初期値なし変数
定義:var 変数名1,変数名2,...変数名n 変数型
例:
var s1, s2, s3 string
##初期値あり変数
定義: var 変数名1,変数名2,...変数名n 変数型 = 値1,値2,...値n
例:
var s1, s2, s3 string = "s1です。", "s2です。", "s3です。"
エラー例:
var s1, s2, s3 string = "stringです。"
値から型を推測できるので、変数型を省略して書くことも可能です。
定義: var 変数名1,変数名2,...変数名n = 値1,値2,...値n
例:
var s1, s2, s3 = "s1です。", "s2です。", "s3です。"
varキーワードは嫌な場合は、varを省略して書くことも可能です。
定義:変数名1,変数名2,...変数名n := 値1,値2,...値n
例:
s1, s2, s3 := "s1です。", "s2です。", "s3です。"
エラー例:
var s1, s2, s3 := "s1です。", "s2です。", "s3です。"
#まとめて変数定義
定義:上記の単独変数と、複数変数の組み合わせ
var (
変数名1 変数型 = 値
変数名2 変数型
変数名3 = 値
変数名4, 変数名5 変数型 = 値
変数名6, 変数名7 変数型
変数名8, 変数名9 = 値
)
例:
var (
s1 string = "s1です。"
s2 string
s3 = "s3です。"
num1, num2 int16 = 1, 2
num3, num4 int32
num5, num6 = 5, 6
)
エラー例:(省略式の「:=」を使う)
var (
変数名 変数型 := 値
)
以上