無符號整型:uint8
、uint16
、uint32
、uint64
帶符號整型:int8
int16
int32
int64
uint
和int
具體是32位還是64位看作業系統
型別描述
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位作業系統上就是uint32
,64位作業系統上就是uint64
int32位作業系統上就是int32
,64位作業系統上就是int64
uintptr
無符號整型,用於存放乙個指標
float32和float64
go語言中浮點數預設是float64
complex128和complex64
boolean
string
go語言中字串都是utf-8編碼,utf-8編碼中乙個常用漢字一般佔3個字元
由於rune可表示的範圍更大,所以能處理一切字元,當然也包括中文字元。在平時計算中文字元,可用rune。
func main()
//輸出,注意在golang中乙個漢字佔3個byte
chinese length 31
chinese word length 19
chinese word length 19
go語言型別轉換
if 表示式1
else
if 表示式2
else
for 初始語句;條件表示式;結束語句
可以使用for range
遍歷陣列、切片、字串、map 及通道(channel)。 通過for range
遍歷的返回值有以下規律:
陣列、切片、字串返回索引和值。
map返回鍵和值。
通道(channel)只返回通道內的值。
switch inter
fallthrough
語法可以執行滿足條件的case的下乙個case,是為了相容c語言中的case設計的。
func
switchdemo5()
}
輸出:
a
b
for i :=
0; i <
10; i++
fmt.
printf
("%v-%v\n"
, i, j)}}
return
// 標籤
breaktag:
fmt.
println
("結束for迴圈"
)
break
語句可以結束for
、switch
和select
的**塊。
break
語句還可以在語句後面新增標籤,表示退出某個標籤對應的**塊,標籤要求必須定義在對應的for
、switch
和select
的**塊上。 舉個例子:
func
breakdemo1()
fmt.
printf
("%v-%v\n"
, i, j)}}
fmt.
println
("..."
)}
continue
語句可以結束當前迴圈,開始下一次的迴圈迭代過程,僅限在for
迴圈內使用。
在continue
語句後新增標籤時,表示開始標籤對應的迴圈。例如:
func
continuedemo()
fmt.
printf
("%v-%v\n"
, i, j)}}
}
go 語言內建的運算子有:
算術運算子
關係運算子
邏輯運算子
位運算子
運算子描述
&參與運算的兩數各對應的二進位相與。 (兩位均為1才為1)
|參與運算的兩數各對應的二進位相或。 (兩位有乙個為1就為1)
^參與運算的兩數各對應的二進位相異或,當兩對應的二進位相異時,結果為1。 (兩位不一樣則為1)
<<
左移n位就是乘以2的n次方。 「a<>>
右移n位就是除以2的n次方。 「a>>b」是把a的各二進位全部右移b位。
賦值運算子
Golang 基礎 12 基礎小結
目錄 package main import fmt func ppp s int func main 結果是 本來應該改變的,為什麼沒有變?所以使用slice會修改時,建議盡量使用返回值 package main import fmt time func main 建議使用第一行的輸出方式,第二行...
GoLang 併發小結
006.併發 1 概念 1.1 goroutine是go並行設計的核心,goroutine的本質是輕量級執行緒 1.2 golang的runtime實現了對輕量級執行緒即goroutine的智慧型排程管理 1.3 p m g原理 1.3.1 runtime有p m g三個概念,p對應作業系統程序 對...
Golang測試包小結
golang自帶了測試包 testing 直接可以進行單元測試 效能分析 輸出結果驗證等。簡單看著官方文件試了試,總結一下 使用golang的測試包,需要遵循簡單的目錄結構 測試 放在待測試 的目錄下 乙個包內 以 test.go結尾,例如如下目錄結構,mytest目錄下有待測試的 檔案mytest...