簡單說明Golang宣告方法,以及比較特別的地方。
1. 宣告變數
1 2 3 4
| var a int var b string var c bool var d float32
|
2. 宣告變數並賦值
1 2 3 4
| var a int = 1 var b string = "Hello" var c bool = true var d float32 = 1.1
|
3. 宣告變數並賦值 (型態自動推斷)
1 2 3 4
| var a = 1 var b = "Hello" var c = true var d = 1.1
|
4. 宣告變數並賦值 (簡短宣告)
1 2 3 4
| a := 1 b := "Hello" c := true d := 1.1
|
5. 宣告多個變數
1 2 3 4
| var a, b, c int var d, e, f string var g, h, i bool var j, k, l float32
|
6. 宣告多個變數並賦值
1 2 3 4
| var a, b, c int = 1, 2, 3 var d, e, f string = "Hello", "World", "!" var g, h, i bool = true, false, true var j, k, l float32 = 1.1, 2.2, 3.3
|
7. 宣告多個變數並賦值 (型態自動推斷)
1 2 3 4
| var a, b, c = 1, 2, 3 var d, e, f = "Hello", "World", "!" var g, h, i = true, false, true var j, k, l = 1.1, 2.2, 3.3
|
8. 宣告多個變數並賦值 (簡短宣告)
1 2 3 4
| a, b, c := 1, 2, 3 d, e, f := "Hello", "World", "!" g, h, i := true, false, true j, k, l := 1.1, 2.2, 3.3
|
特別說明此種方法
它也可以對已經宣告過的變數再次使用「:=」,但前提是多個變數中至少要有一個變數是尚未宣告的。
如下範例,a, b在第一行被宣告,第二行卻可以再宣告一次,原因是其中的d尚未宣告,所以第二行可以使用「:=」,程式會自動把a, b改為更新值,而不是當作新變數宣告。
1 2
| a, b, c := 1, 2, 3 a, b, d := 4, 5, 6
|