上一篇我們已經知道go語言中的常量和iota(常量計數器)的相關知識
今天介紹go的數據類型之一:整型
在go語言中 整型分爲兩大類
- 有符號:int8 int16 int32 int64
有符號的在32位操作系統上 默認是int32,在64位操作系統上 默認是int64 - 無符號:uint8 uint16 uint32
無符號的在32位操作系統上 默認是uint32 在64位操作系統上 默認是uint64
uintptr 無符號整型 用於存放一個指針
Go語言是無法直接定義二進制數的
怎麼理解這句話呢? 就是你定義一個整型的變量 並進行賦值
go語言會根據這個值去判斷它是屬於哪個進制的值
但唯獨 無法識別二進制!!!
用法
定義一個十進制的數
i1 := 101
定義一個八進制的數
i2 := 077
定義一個十六進制的數
i3 := 0x1234567
定義一個in8類型的整數
//int8類型的 整數9
i4 := int8(9)
整型之間的相互轉換
我們通過fmt這個包 來進行 整形之間的進制轉換
關於這個fmt包 我會在後面單獨寫一篇用來總結匯總
我們先看下如何進行轉換吧!
新建一個文件夾取名int 在文件夾下新建main.go 編寫一下內容:
package main
import "fmt"
func main(){
i1 := 101 //這裏會識別成 是八進制值
//輸出i1的十進制值
fmt.Printf("%d \n",i1) //101
//輸出i1的二進制值
fmt.Printf("%b \n",i1) //1100101
//輸出i1的八進制值
fmt.Printf("%o \n",i1) //145
//輸出i1的十六進制值
fmt.Printf("%x \n",i1)//65
i2 := 077 //這裏會識別成 是八進制值
//輸出i2的二進制值
fmt.Printf("%b \n",i2)//111111
//輸出i2的十進制值
fmt.Printf("%d \n",i2)//63
//輸出i2的十六進制值
fmt.Printf("%x \n",i2)//3f
i3 := 0x1234567
//輸出i3的二進制值
fmt.Printf("%b \n",i3)//1001000110100010101100111
//輸出i3的八進制值
fmt.Printf("%o \n",i3)//110642547
//輸出i3的十進制值
fmt.Printf("%d \n",i3)//19088743
//定義一個 int8類型的整數9
i4 := int8(9)
//輸出i4的值
fmt.Println(i4) //9
//輸出i4的類型
fmt.Printf("%T \n",i4)//int8
}
這裏我們可以先暫時記住幾個fmt
包裏面的Printf
的幾個格式化類型
%d
輸出十進制值
%b
輸出二進制值
%o
輸出八進制值
%x
輸出十六進制值
%T
輸出變量所屬類型
關於Go語言的整型就介紹到這裏
未完待續。。。