本篇筆記內容到p5.3
// test.go project main.go
package main
import (
"fmt"
"log"
"os"
)// init會在main函式之前自動呼叫
func init()
/** go語言中,引用的型別有如下幾個:切片、對映、通道、介面、函式。(還可以借助指標間接傳值~)
整數、字串、陣列、bool等都是傳值,特別是陣列。
*/// 主函式,只有在package main下有用,否則是普通的函式
func main()
// 陣列和切片
func test_1() //根據後續內容確定陣列大小
fmt.println(a1, a2)
fmt.println(a3, a4, a4[1][2], (*a4[1])[2]) //這個比較有意思
// 切片,傳遞的是類似指標
b1 := make(int,5)
b2 := int
//方括號內不要新增任何東西,這是與陣列的區別
b3 := b2[3
:5] //長度5-3=2,容量6-3=3
b3[0] =99
//同時也修改原來切片的值
fmt.println(b1, b2, b3)
fmt.println(b4, cap(b2), cap(b4)) // 1000之內容量100%增長,之上25%增長
for index, val := range b4
for index :=2; index < len(b4); index++
fmt.println(b4)
}func test_2()
delete(a2, "red")
fmt.println(a1, a2)
val, exist := a1["white"]
if exist
if val ==0
}// 自定義型別
type user struct
func (u user) notify()
func (u *user) notify2()
func test_3()
a1.vip =9
a1.notify()
(&a1).notify2()
fmt.printf("a1 addr: %p, age: %v\n", &a1, a1.age)
}
go學習筆記01 基本示例
請保持檔案編碼為utf 8 package main 程式入口包必須是main import fmt 匯入使用功能的包,可以在前面使用別命 var a int 定義全域性變數初始為零,型別在後面。未指定情況,標準型別為零,其它為nil var 多賦值方式 a1 int a2 string a3,a4...
Golang學習筆記 GO的各種編譯 01
使用go build 在專案目錄下執行go build在其他路徑下執行go bulid,需要在後面加上專案的路徑 專案路徑從gopath src後開始寫起,編譯之後的可執行檔案就儲存在當前目錄下 go build o hello,exe可以指定輸出檔案的名字 像執行指令碼檔案一樣執行go go in...
Go筆記01 開發環境搭建
學習部落格 安裝目錄一定選乙個好記的。安裝完成後,輸入go version檢視go版本號。詳細步驟 在自己的電腦上新建乙個目錄d go 存放我編寫的go語言 在環境變數裡,新建一項 gopath d go在d go下新建三個資料夾,分別是 bin src pkg把d go bin這個目錄新增到pat...