Go 的變量賦值
上節(jié)課我們學(xué)習(xí)了 Go 語(yǔ)言中的兩種變量聲明方式:單變量聲明方式和多變量聲明方式。既然已經(jīng)聲明了變量,那么下一步肯定要給變量賦值并使用,這節(jié)課我們就來(lái)學(xué)習(xí)下在 Go 語(yǔ)言中如何給一個(gè)變量賦值:
1. 單變量賦值
Go 語(yǔ)言的賦值使用的是?=
?符號(hào),賦值過(guò)程可以在變量聲明時(shí)賦值,也可以在變量聲明之后賦值,如果在變量聲明時(shí)直接賦值,可以不用聲明變量類(lèi)型。需要注意的是?Go 語(yǔ)言變量聲明之后會(huì)初始化一個(gè)"零值",即使不賦值也可以直接使用。我們來(lái)通過(guò)一個(gè)例子來(lái)深入了解變量的賦值和"零值"以及聲明時(shí)賦值:
Tips:變量的數(shù)據(jù)類(lèi)型我們會(huì)在后面的小節(jié)進(jìn)行深入講解,這個(gè)小節(jié)中只是簡(jiǎn)單了解下。
- 1?
package main
- 2
- 3?
import "fmt"
- 4
- 5?
func main() {
- 6?????
var num1 int
- 7? ? ??
fmt.Println("num1的零值:", num1)
- 8? ? ?
num1 = 10 // 使用=對(duì)num1進(jìn)行賦值操作
- 9? ? ?
fmt.Println("num1的值:", num1)
- 10? ?
var num2 = 20 //在聲明變量時(shí),使用 = 對(duì)num2 進(jìn)行賦值操作
- 11? ?
fmt.Println("num2的值:", num2)
- 12?
}
- 第 6 行:聲明了一個(gè)名為 num1 的 int 類(lèi)型變量;
- 第 7 行:輸出變量 num1 的零值;
- 第 8 行:對(duì) num1 變量重新賦值,使其值變?yōu)?10;
- 第 9 行:打印重新賦值之后的 num1 變量的值;
- 第 10 行:聲明一個(gè)名為 num2 的變量,并直接對(duì)其賦值為 20;
- 第 11 行:打印 num2 變量的值。
輸出結(jié)果:

從輸出的結(jié)果可以看出,聲明了變量 num1 之后,num1 就已經(jīng)具有了零值:0,可以直接拿來(lái)進(jìn)行使用而程序并不會(huì)報(bào)錯(cuò)。之后對(duì) num1 進(jìn)行賦值,改變了 num1 的值,使其值變?yōu)榱?10。在聲明變量 num2 的時(shí)候沒(méi)有給予 num2 變量類(lèi)型,就直接賦值了,這個(gè)是 Go 語(yǔ)言的特性。Go 語(yǔ)言可以在聲明的時(shí)候直接不定義類(lèi)型賦值,其聲明的變量類(lèi)型和賦值的類(lèi)型一致。
2. 多變量賦值
Go 語(yǔ)言中的=
符號(hào),不僅僅可以給一個(gè)變量賦值,它可以賦值復(fù)數(shù)的變量,形如變量,變量=變量值,變量值
,復(fù)數(shù)變量和變量值之間使用,
隔開(kāi)。多變量和單變量賦值的使用方法一致。
- 1?
package main
- 2
- 3?
import (
- 4? ?? ?
"fmt"
- 5?
)
- 6
- 7?
func main() {
- 8? ? ?
var num1, num2 = 10, 20 //使用,分割從而進(jìn)行多變量賦值
- 9? ? ?
fmt.Println("num1,num2的值:", num1, num2)
- 10? ?
num1, num2 = 30, 40 //使用,分割從而進(jìn)行多變量賦值
- 11? ?
fmt.Println("num1,num2的值:", num1, num2)
- 12?
}
- 第 8 行:聲明兩個(gè)變量 num1 和 num2 并直接給這兩個(gè)變量分別賦值為 10,20;
- 第 9 行:打印兩個(gè)變量的值;
- 第 10 行:修改兩個(gè)變量的值為 30,40;
- 第 11 行:修改之后重新打印兩個(gè)變量的值。
輸出結(jié)果:

3. 小結(jié)
本文主要學(xué)習(xí)了 Go 語(yǔ)言中的賦值辦法,直接在聲明時(shí)賦值可以不帶類(lèi)型,Go 語(yǔ)言會(huì)自動(dòng)根據(jù)變量值自動(dòng)匹配變量類(lèi)型。但是要注意的是:如果你在聲明變量的同時(shí)也標(biāo)明了變量的數(shù)據(jù)類(lèi)型,那么在之后的使用中一定要注意在一開(kāi)始的時(shí)候變量的數(shù)據(jù)類(lèi)型。
文章來(lái)源于網(wǎng)絡(luò),侵刪!