Go初級入門(二):變量、常量與數據類型
大家好,歡迎來到《Go初級入門》系列的第二篇!在上一篇文章中,我們介紹了如何安裝Go環境并運行第一個“Hello, World”程序。今天,我們將深入Go語言的基礎語法,重點學習 變量、常量 以及 常用的數據類型。
掌握這些基礎知識,是你邁向Go語言開發的第一步。讓我們開始吧!
一、變量(Variables)
變量是程序中用于存儲數據的“容器”。在Go中,變量必須先聲明后使用。
1. 變量聲明語法
Go提供了多種聲明變量的方式:
方式一:使用 var
關鍵字
var name string
var age int
這表示聲明了一個名為 name
的字符串變量和一個名為 age
的整型變量。
你也可以在同一行聲明多個變量:
var x, y int
var a, b, c string
方式二:聲明并初始化
var name string = "Alice"
var age int = 25
Go具有類型推導能力,因此你可以省略類型:
var name = "Bob"
var age = 30 // Go會自動推斷為int類型
方式三:短變量聲明(最常用)
在函數內部,可以使用 :=
快速聲明并初始化變量:
name := "Charlie"
age := 28
這是Go中最常見的變量聲明方式,簡潔高效。
?? 注意:
:=
只能在函數內部使用,且變量必須是新聲明的(不能重復聲明)。
二、常量(Constants)
常量是程序運行期間不可更改的值。適合用于定義配置、數學常數等。
常量聲明
使用 const
關鍵字:
const Pi = 3.14159
const CompanyName = "TechGo"
你也可以批量聲明:
const (StatusOK = 200StatusNotFound = 404StatusServerError = 500
)
💡 小技巧:常量在編譯時確定,不會占用運行時內存。
三、Go的基本數據類型
Go是靜態類型語言,每個變量都有明確的類型。以下是Go中常見的基礎數據類型:
1. 布爾類型(boolean)
var isActive bool = true
var isDone = false
取值只有 true
或 false
。
2. 整數類型
類型 | 描述 |
---|---|
int | 有符號整數(32位或64位) |
int8 | -128 到 127 |
int16 | -32768 到 32767 |
int32 | 約 ±21億 |
int64 | 更大范圍的整數 |
uint | 無符號整數 |
uint8 | 0 到 255(常用于字節) |
一般情況下,使用
int
就足夠了。
3. 浮點數類型
var price float64 = 19.99
var rate = 3.14 // 默認是float64
float32
:單精度浮點數float64
:雙精度浮點數(推薦使用)
4. 字符串類型(string)
字符串用雙引號包裹:
var message string = "Hello, Go!"
name := "Lily"
Go中的字符串是不可變的,支持UTF-8編碼。
5. 字符類型(rune)
Go中沒有 char
類型,而是使用 rune
表示一個Unicode字符:
var ch rune = 'A'
var emoji = '😊' // 支持emoji
底層是 int32
類型。
6. 字節類型(byte)
byte
是 uint8
的別名,常用于處理原始字節數據:
var b byte = 'B' // ASCII值66
四、查看變量類型
Go提供了 fmt.Printf
的 %T
動詞來打印變量類型:
package mainimport "fmt"func main() {name := "GoLang"age := 15price := 9.99isActive := truefmt.Printf("name 的類型是: %T\n", name)fmt.Printf("age 的類型是: %T\n", age)fmt.Printf("price 的類型是: %T\n", price)fmt.Printf("isActive 的類型是: %T\n", isActive)
}
輸出:
name 的類型是: string
age 的類型是: int
price 的類型是: float64
isActive 的類型是: bool
五、最佳實踐建議
- 優先使用
:=
在函數內部快速聲明變量。 - 明確類型 在導出變量或需要精確控制時顯式聲明類型。
- 常量命名 使用駝峰或全大寫,如
MaxUsers
或API_TIMEOUT
。 - 避免使用
var
初始化多個不同類型的變量,影響可讀性。
小結
在本篇文章中,我們學習了:
- 如何聲明和使用變量與常量
- Go的常用基礎數據類型
- 不同變量聲明方式的適用場景
- 如何查看變量類型
這些是Go語言編程的基石。掌握它們,你就能開始編寫更復雜的程序了。
下期預告
在下一篇文章中,我們將介紹 Go中的控制結構:if
、for
、switch
等語句,帶你寫出更有邏輯的代碼!
?