go語言基礎小結

2021-08-22 11:46:44 字數 2438 閱讀 3883

目錄

1 基本資料型別

2 零值

3 常量

4 型別轉換

5 變數

5.1 宣告變數

5.2 變數初始化

6 函式

6.1 宣告函式

6.2 多返回值和命名返回值

1)  布林型(bool: 1位)

bool:只有truefalse兩種值

2)  整型

有符號:

int8 、int16、int32、int64

無符號:

uint8、uint16、uint32、uint64

int* 和uint*區別是int*帶有負數,uint*不帶負數

具體型別

取值範圍

int8(byte)

-127~128

uint8

0~255

int16

-32768~32767

uint16

0~65535

int32

-2147483648~2147483647

uint32

0~4294967295

int64

-9223372036854775808~9223372036854775807

uint64

0~18446744073709551615

3)  浮點型

根據位數: float32 float64

4)  字串型別

string型別是使用雙引號""或者反引號``引起來的字串變數,採用utf-8編碼.

5)  複數型別

根據位數 :

complex64:複數的實部和虛部都是float32

complex128:複數的實部和虛部都是float64

6)  錯誤型別

error

零值:

沒有明確初始值的變數宣告會被賦予它們的 零值。

零值是:

數值型別為 0,

布林型別為 false,

字串為 ""(空字串)。

輸出結果:

go支援定義字元常量,字串常量,布林型常量和數值常量。

go通過const來定義常量:

package main

import "fmt"

import "math"

// "const" 關鍵字用來定義常量

const s string = "constant"

func main()

表示式t(v)將值v轉換為型別t

與 c 不同的是,go 在不同型別的項之間賦值時需要顯式轉換。

package main

import (

"fmt"

"math"

)func main()

var 用來宣告變數列表,型別在最後;

短變數可用 := 來宣告,因為函式外的每個語句都必須以關鍵字開始,所以 := 變數不能在函式外使用

變數宣告可以包含初始值,每個變數對應乙個

如果初始值已存在,則可以省略型別;變數會從初始值中獲取型別

函式可以沒有引數或接受多個引數;

當連續兩個或多個函式的已命名形參型別相同時,除最後乙個型別以外,其它都可以省略。

package main

import "fmt"

//函式

func add(x int, y int) int

//當連續兩個或多個函式已命名形參型別相同時,除最後乙個型別以外,其他都可以省略

func add2(x,y int) int

func main()

func main()

命名返回值:

package main

import "fmt"

func split(sum int) (x, y int)

func main()

Go 語言基礎

go 語言內建的運算子有 1.算術運算子 2.關係運算子 3.邏輯運算子 4.位運算子 將其先轉換為二進位制數,在根據如下表規則 p q p q p q p q 0 0 0 0 0 0 1 0 1 1 1 1 1 1 0 1 0 0 1 1如假定 a 60 b 13 其二進位制數轉換為 a 0011...

Go語言基礎

目錄 一.go語言內建關鍵字 二.go語言注釋方法 三.專案結構 四.程式結構 五.包的匯入 六.package的別名 七.可見性規則 單行注釋 多行注釋 go程式是通過package來組織的 只有package 名稱為main的包可以包含main函式 乙個可執行程式有且僅有乙個main包 初步練習...

Go語言defer學習小結

延時呼叫函式語法 defer func name param list defer func 關鍵字defer修飾的函式,值得關注的有以下幾點 1 函式會被推遲到包含這個defer語句的函式即將返回前才被呼叫執行。這點需要理解defer的工作機制,大致為defer出現的地方,插入指令call run...