Go語言的變量

字號+ 編輯: IT男在阿里 修訂: 科学鼠辈 來源: 利志分享 2023-09-12 我要說兩句(0)

本文用代碼案例講述Go語言的變量以及Go變量的特性。

下面是代碼例子:

//go 變量
//申明包名main
package main

//導入包名
import(
    "fmt"
)

var a int //聲明一個int類型的變量
var b struct{ //聲明一個結構體
    name string
}

var c = 8 //聲明變量同時賦值
var ( //批量聲明變量,簡潔
    d int
    e string
)

var name1 int = 5 //1聲明變量name1,並且初始化

//一行申明多個變量
var f,g int

//同一行初始化多個變量,不同類型也可以,這裡默認初始化值,根據值進行定義了類型。
var h,i,j = 5,"abd",0.4

func main(){
    name2 := "test" //2聲明變量並初始化值,這種賦值不能在函數外面進行賦值
    //列印變量
    fmt.Println(a,b,c,d,e,f,g,h,i,j)
    fmt.Println(name1,name2)
}

總結:

1、變量聲明(variable declaration)中的初始化表達式(initialization expressions)的求值順序(evaluation order)由初始化依賴(initialization dependencies)決定;但對於初始化表達式内部的操作數的求值需要按照2中的順序:從左到右。

2、在非變量初始化語句中,對表達式、賦值語句或返回語句中的操作數進行求值時,操作數中包含的函數(function)調用、方法(method)調用和通信操作(主要針對channel)將按語法從左到右的順序求值。

3、賦值語句求值分爲兩個階段,第一階段是等號左邊的index expressions、pointer indirections和等號右邊的表達式中的操作數的求值順序按照2中從左到右的順序;第二階段按從左到右的順序對變量賦值。


注意:

I. Go裡面不損失精度的情況下會把8.0這類浮點數視作整數8

II. Go裡面的常數是高精度數,分爲幾類。

  1. 有類型的:uint(8),類型顯式指定了,在表達式裡面不會變化。

  2. 無類型的:分成無類型整數和無類型浮點兩類。這兩類在使用的時候會根據上下文需要的類型轉化爲實際類型


閲完此文,您的感想如何?
  • 有用

    0

  • 沒用

    0

  • 開心

    0

  • 憤怒

    0

  • 可憐

    0

1.如文章侵犯了您的版權,請發郵件通知本站,該文章將在24小時内刪除;
2.本站標注原創的文章,轉發時煩請注明來源;
3.交流群: 2702237 13835667

相關課文
  • GO語言GORM如何更新字段

  • gorm如何創建記錄與模型定義需要注意什麽

  • gorm一般查詢與高級查詢

  • GORM時間戳跟蹤及CURD(增刪改查)

我要說說
網上賓友點評