人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動態(tài)

Go語言中的變量和常量

發(fā)布日期:2022-07-15 19:41 | 文章來源:源碼之家

一、變量相關(guān)

1.變量聲明

C# : int a;

Go : var a int; 需要在前面加一個var關(guān)鍵字,后面定義類型

可以使用 var( a int; b string;)減少var

2.變量初始化

var a int = 10// 正確的使用方式1
 
var a = 10 // 正確的使用方式2,編譯器可以自動推導(dǎo)出v2的類型
 
a := 10 // 正確的使用方式3,編譯器可以自動推導(dǎo)出v3的類型

在:=左側(cè)的變量不應(yīng)該是已經(jīng)被聲明過的

3.變量賦值

注意:Go語言的新特性 “Simultaneous Assignment” (平行賦值、多重賦值 ......)

a,b = b,a 可以方便的交換兩個數(shù)的值,之前的其他語言可能都需要加一個temp變量

對于這個我其實是有疑問的,就是Go語言是如何實現(xiàn)該功能的?按照我的想法如果是go語言底層也是按照加入一個變量的方式,那么豈不是輸出的a和b都是b的值了?達(dá)不到交換的目的。

大概結(jié)論就是,這個賦值操作可以看成一個原子操作。

4.匿名變量

Go可以定義匿名變量來減少不需要的代碼,例如,我只關(guān)心Value,不想打印Key的時候可以用“_”代替變量。同理對于有多個返回值的方法,可以用“_”代替我不想要的返回值,這樣就減少了變量的定義。

func main(){
 x:=make(map[string]int16)
 x["apple"] =100
 x["orange"] = 50
 x["pear"]=500
 for _,value := range x{
  fmt.Println(value);
 }
}

二、常量相關(guān)

1.字面常量

Go語言的字面常量是無類型的,可以被賦值給任何類型的變量。

例如 AConstNumber 可以賦值給int、float32等類型,但是賦值給string就出錯了

package main
import ( "fmt")
func main(){
 const AConstNumber = -100
 var x int = AConstNumber
 var y float32 = AConstNumber
 fmt.Println("x:",x)
 fmt.Println("y:",y)
}

2.預(yù)定義常量

Go語言預(yù)定義了這些常量:true、false和iota。

iota是個什么玩意?

iota比較特殊,可以被認(rèn)為是一個可被編譯器修改的常量,在每一個const關(guān)鍵字出現(xiàn)時被 重置為0,然后在下一個const出現(xiàn)之前,每出現(xiàn)一次iota,其所代表的數(shù)字會自動增1。 (一個計數(shù)器?)

例如:

func main(){
 const(
  a = iota *100
  b = iota *100
  c = iota *100
 )
 const(
  d = iota *100
  e = iota *100
  f = iota *100
 )
 fmt.Println(a)  // 打印 0
 fmt.Println(b)  // 打印 100
 fmt.Println(c)  // 打印 200
 fmt.Println(d)  // 打印 0
 fmt.Println(e)  // 打印 100
 fmt.Println(f)  // 打印 200
}

所以 iota 這個東西用好了就能當(dāng)枚舉使用了,正好Go語言不支持enum關(guān)鍵字

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持本站。

美國服務(wù)器租用

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實時開通

自選配置、實時開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部