Go語言的變量和常量

1. 變量

1.1 變量聲明

變量聲明的標準格式:
var <變量名稱> <變量類型>
變量名稱的首字母大小寫則決定該變量可否被外部引入,變量類型Go語言中支持很多種比如常見的int、string、bool、byte、float32等。

除了標準格式的聲明外,還有兩種帶初始化的變量聲明:
var <變量名稱> = <變量值>,會根據(jù)初始化變量具體的值來確定變量的類型,且使用范圍沒有限制;
<變量名稱> := <變量值>,簡短模式的變量聲明且?guī)в酗@式初始化,不過這種方法僅限于在函數(shù)內(nèi)部使用;

另外,變量的聲明還支持如下的使用形式:

// 同時聲明同一類型的多個變量
var a, b int
// 支持批次聲明
var (
  a int
  b string
  help bool
  array0 [10]int
  slice0 []int
)

1.2 變量初始化

關于變量的初始化方法其實上面變量聲明中已經(jīng)基本上都已經(jīng)涉及到了,還要一種對應標準格式的初始化方法:
var <變量名稱> <變量類型> = <變量值>

最后注意,一旦變量被聲明之后,在Go的內(nèi)存中其實都已經(jīng)被初始化了,系統(tǒng)自動賦予它該類型的零值:int 為 0,float 為 0.0,bool 為 false,string 為空字符串,指針為 nil等。

2 常量

go語言的常量通常使用const關鍵字來聲明,并且常量的數(shù)據(jù)類型只可以是布爾型、數(shù)字型和字符串型,一般的定義格式如下:
const 變量名稱 [變量類型] = 變量值,跟變量相比,一般常量除了由關鍵字var --> const外,定義規(guī)則基本上跟變量保持一致,另外常量還支持枚舉類型,比如:

const (
  UNKNOWN = 400
  SUCCESS = 200
  ERROR = 500
)

并且常量可以用函數(shù)計算表達式的值,不過這些函數(shù)必須是go的內(nèi)置函數(shù),否則編譯不過。

特殊常量iota

常量聲明可以使用 iota 常量生成器初始化,它用于生成一組以相似規(guī)則初始化的常量,但是不用每行都寫一遍初始化表達式。在一個 const 聲明語句中,在第一個聲明的常量所在的行,iota 將會被置為 0,然后在每一個有常量聲明的行加一,下面看幾個相關的例子:

  • Example1
const (
  a = iota //a=0
  b        //b=1
  c        //c=2
  d        //d=3
  e = "welcome"
  f
  g = iota
  h
  i
)
  • Example2
const (
  a = 1 << iota // a=1
  b = 3 << iota // b=6
  c             //c=12
  d            //d=24
)
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容