整型
golang中有8種普通的整型: 分別是int8,int16,int32,int64,uint8,uint16,uint32,uint64.其中:
-
int表示為整型
-
前面有u表示為無符號整型,沒有u表示有符號整型
-
後面的數字表示位數,比如int8就表示8位的有符號整型
還有3種特殊的整型,分別是int,uint,uintptr.因為int和uint會更具所在的平台不同有所不同,如果是在64位電腦上就相當於int64和uint6,在32位電腦上相當於int32和uint64.
聲明舉例:
var i int32 = 32
var i = 32
i := 32
浮點型
浮點型有folat32,和float64兩種,他們的最大值可以使用math.MaxFloat32和math.MaxFloat64表示.
複數
複數類型有兩種complex64和complex128,complex64表示實部和虛部都是32位,complex128則表示都是64位.
var s complex64 = 1 + 2i
布爾型
bool型就兩個值: true和false,表示真和假,與其他語言相通,沒必要多說
字符串
字符串為string類型,與大多數語言相似.有下面幾個是常用函數:
len() // 求字符串長度
+ 或 fmt.Sprintf // 字符串拼接
string.Split // 分割
string.HasPrefix / string.LastSuffix // 以xx開頭或結尾的
string.index / string.Lastindex // 子串出現位置
原串: 表示字符串的表面含義,不適用傳義字符等.與C#在前面加r不同,go採用的是使用 ` (反引號,ESC鍵下面的那個鍵),只要是使用反引號括起來的就是原串.同時使用反引號括起來的字符串可以跨行書寫等.
如果想要修改str對象,必須要先將其轉換為[]byte
或者[]rune
類型.
自動類型推斷可以讓你能夠直接給一個變量賦一個8進制或者16進制的數值,下面便是520的不同進制表示
v1 := 0b10100011 // 格式化輸出中使用%b輸出二進制
v2 := 01010 // %o輸出八進制
v := 520 // %d輸出十進制整數
v3 := 0x208 // %x輸出十六進制