總目錄:http://www.reibang.com/p/e406a9bc93a9
Golang - 子目錄:http://www.reibang.com/p/8b3e5b2b4497
整型
整型分為以下兩個大類: 按長度分為:int8、int16、int32、int64 對應的無符號整型:uint8钠署、uint16睡雇、uint32例嘱、uint64
其中脖祈,uint8就是我們熟知的byte型,int16對應C語言中的short型颖变,int64對應C語言中的long型。
類型 | 描述 |
---|---|
uint8 | 無符號 8位整型 (0 到 255) |
uint16 | 無符號 16位整型 (0 到 65535) |
uint32 | 無符號 32位整型 (0 到 4294967295) |
uint64 | 無符號 64位整型 (0 到 18446744073709551615) |
int8 | 有符號 8位整型 (-128 到 127) |
int16 | 有符號 16位整型 (-32768 到 32767) |
int32 | 有符號 32位整型 (-2147483648 到 2147483647) |
int64 | 有符號 64位整型 (-9223372036854775808 到 9223372036854775807) |
特殊整型
類型 | 描述 |
---|---|
uint | 32位操作系統(tǒng)上就是uint32听想,64位操作系統(tǒng)上就是uint64 |
int | 32位操作系統(tǒng)上就是int32腥刹,64位操作系統(tǒng)上就是int64 |
uintptr | 無符號整型,用于存放一個指針 |
注意: 在使用int和 uint類型時汉买,不能假定它是32位或64位的整型肛走,而是考慮int和uint可能在不同平臺上的差異。
注意事項
獲取對象的長度的內建len()函數(shù)返回的長度可以根據(jù)不同平臺的字節(jié)長度進行變化。
實際使用中朽色,切片或 map 的元素數(shù)量等都可以用int來表示邻吞。
在涉及到二進制傳輸、讀寫文件的結構描述時葫男,為了保持文件的結構不會受到不同編譯目標平臺字節(jié)長度的影響抱冷,不要使用int和 uint。
package main
import "fmt"
func main() {
//定義一個十進制型
i1 := 101
fmt.Printf("%d\n",i1)
fmt.Printf("%b\n",i1) //把十進制數(shù)轉換為二進制
fmt.Printf("%o\n",i1) //把十進制數(shù)轉換為八進制
fmt.Printf("%x\n",i1) //把十進制數(shù)轉換為十六進制
//定義一個八進制數(shù)
i2 := 077
fmt.Printf("%d\n",i2)
//定義一個十六進制數(shù)
i3 := 0xa
fmt.Printf("%d\n",i3)
//定義一個int8類型
i4 := int8(10) //聲明時必須強制指定int8類型
fmt.Printf("%d\n",i4)
fmt.Printf("%T\n",i4) // %T 可以獲得他的數(shù)據(jù)類型
}
浮點型
Go語言支持兩種浮點型數(shù):float32和float64梢褐。這兩種浮點型數(shù)據(jù)格式遵循IEEE 754標準: float32 的浮點數(shù)的最大范圍約為 3.4e38旺遮,可以使用常量定義:math.MaxFloat32。 float64 的浮點數(shù)的最大范圍約為 1.8e308盈咳,可以使用一個常量定義:math.MaxFloat64耿眉。
打印浮點數(shù)時,可以使用fmt包配合動詞%f鱼响。
package main
import "fmt"
func main(){
//定義一個浮點數(shù)
f1 := 1.2345
fmt.Printf("%f\n",f1) //默認go語言內小數(shù)都是float64
fmt.Printf("%.2f\n",f1) //也可以使用小數(shù)位操作符
f2 := float32(1.234) //顯式聲明
fmt.Printf("%T\n",f2)
}
復數(shù)
complex64和complex128
var c1 complex64
c1 = 1 + 2i
var c2 complex128
c2 = 2 + 3i
fmt.Println(c1)
fmt.Println(c2)
復數(shù)有實部和虛部鸣剪,complex64的實部和虛部為32位,complex128的實部和虛部為64位丈积。
布爾值
Go語言中以bool類型進行聲明布爾型數(shù)據(jù)筐骇,布爾型數(shù)據(jù)只有true(真)和false(假)兩個值。
注意:
布爾類型變量的默認值為false江滨。
Go 語言中不允許將整型強制轉換為布爾型.
布爾型無法參與數(shù)值運算铛纬,也無法與其他類型進行轉換。