go學習 go基本型別和運算子

2021-07-23 22:30:28 字數 1198 閱讀 8911

go型別:只能通過顯示型別轉換進行型別間轉換

bool 只有true和false

整形 int8,uint8(byte),int16,uint16,int32,uint32,int64,uint64,int和uint與平台相關

浮點數 float32和float64(相當於c的double)

複數 complex64和complex128

指標型別 uintptr

陣列型別 [n]int。eg: var arr [10]int

結構體  struct

字串  string

引用型別 slice,map(類似hash),chan(通道,併發使用)

介面型別 inte***ce

函式型別 func

運算子^ !                //一元運算子。^:反碼(^a=-(a+1))

* / % + -

<< >> & | &^  ^   //二元運算子。a&^b:如果b的某位為1則該位的結果為0否則為a對應的位的值。6&^11=4,6^4=2(規則 0^1=1, 1^0=1, 1^1=0, 0^0=0)

== != < <= > >=

&& ||

<-

var 《名稱》 《型別》

var a int

a = 1

var 《名稱》 [型別]  = 《表示式》 型別可以省略

var a int = 1

var a = 1

《名稱》 := 《表示式》 全域性變數不可以省略var,不可以使用該形式

a := 1

var a,b,c,d = 1,2,3,4 //函式中多變數並行宣告

a,b,c,d = 1,2,3,4 

型別轉換

《型別a> [:]= 《型別a>(《型別b>)

var a int = 65

b := string(a) //b='a' strconv.itoa(a)="65"

const (

a = 'a'    //65,此時iota為0

b           //65

c = iota    //2,注意iota的特性。 )

const(i

=1<<

iota //1

j=3<<

iota //6

k //k=3)

go基本型別和運算子

乙個簡單的列子 var a bool ture bool值只有false和true。兩個相同的型別之間可以通過 或者 來比較獲取乙個bool值。比如 var a 1a 5 false a 1 true a 2 true a 1 false go對於值之間的比較非常嚴格,只有兩個相同的型別的值才可以進...

Go 基本型別

標準整形是按長度進行分類的,其中uint8為byte型,int16為c語言中的short型,int64為c語言中的long型別。型別描述 uint8 無符號 8位整型 0 到 255 uint16 無符號 16位整型 0 到 65535 uint32 無符號 32位整型 0 到 4294967295...

go 基本型別

go有許多預定義型別,這裡簡單把它們分為基本型別和高階型別。下面是基本型別列表 go的基本型別共有18個,其中int和uint的實際寬度會根據計算架構的不同而不同。在386計算架構下,它的寬度為32位元,即4個位元組。在amd64計算架構下,它們的寬度為64位元,即8個位元組。byte型別可以看作u...