1. 程式人生 > GO語言入門 >08 Go 的變數賦值

08 Go 的變數賦值

上節課我們學習了 Go 語言中的兩種變數宣告方式:單變數宣告方式和多變數宣告方式。既然已經聲明瞭變數,那麼下一步肯定要給變數賦值並使用,這節課我們就來學習下在 Go 語言中如何給一個變數賦值:

1. 單變數賦值

Go 語言的賦值使用的是 = 符號,賦值過程可以在變數宣告時賦值,也可以在變數宣告之後賦值,如果在變數宣告時直接賦值,可以不用宣告變數型別。需要注意的是 Go 語言變數宣告之後會初始化一個"零值",即使不賦值也可以直接使用。我們來通過一個例子來深入瞭解變數的賦值和"零值"以及宣告時賦值:

Tips:變數的資料型別我們會在後面的小節進行深入講解,這個小節中只是簡單瞭解下。

package
main import "fmt" func main() { var num1 int fmt.Println("num1的零值:", num1) num1 = 10 // 使用=對num1進行賦值操作 fmt.Println("num1的值:", num1) var num2 = 20 //在宣告變數時,使用 = 對num2 進行賦值操作 fmt.Println("num2的值:", num2) }
  • 第 6 行:聲明瞭一個名為 num1 的 int 型別變數;
  • 第 7 行:輸出變數 num1 的零值;
  • 第 8 行:對 num1 變數重新賦值,使其值變為 10;
  • 第 9 行:列印重新賦值之後的 num1 變數的值;
  • 第 10 行:宣告一個名為 num2 的變數,並直接對其賦值為 20;
  • 第 11 行:列印 num2 變數的值。

輸出結果:

圖片描述

控制檯中輸出了 num1,num2 的值

從輸出的結果可以看出,聲明瞭變數 num1 之後,num1 就已經具有了零值:0,可以直接拿來進行使用而程式並不會報錯。之後對 num1 進行賦值,改變了 num1 的值,使其值變為了 10。在宣告變數 num2 的時候沒有給予 num2 變數型別,就直接賦值了,這個是 Go 語言的特性。Go 語言可以在宣告的時候直接不定義型別賦值,其宣告的變數型別和賦值的型別一致

2. 多變數賦值

Go 語言中的=符號,不僅僅可以給一個變數賦值,它可以賦值複數的變數,形如變數,變數=變數值,變數值,複數變數和變數值之間使用,隔開。多變數和單變數賦值的使用方法一致。

package main

import (
    "fmt"
)

func main() {
    var num1, num2 = 10, 20 //使用,分割從而進行多變數賦值
    fmt.Println("num1,num2的值:", num1, num2)
    num1, num2 = 30, 40 //使用,分割從而進行多變數賦值
    fmt.Println("num1,num2的值:", num1, num2)
}
  • 第 8 行:宣告兩個變數 num1 和 num2 並直接給這兩個變數分別賦值為 10,20;
  • 第 9 行:列印兩個變數的值;
  • 第 10 行:修改兩個變數的值為 30,40;
  • 第 11 行:修改之後重新列印兩個變數的值。

輸出結果:

圖片描述

控制檯中輸出了 num1,num2 的值

3. 小結

本文主要學習了 Go 語言中的賦值辦法,直接在宣告時賦值可以不帶型別,Go 語言會自動根據變數值自動匹配變數型別。但是要注意的是:如果你在宣告變數的同時也標明瞭變數的資料型別,那麼在之後的使用中一定要注意在一開始的時候變數的資料型別。