package main
import
"fmt"
//偽**
func
main()
//無參無返回值
func
testfun()
//有參無返回值
func
testfun
(a int
, b int
)//不定引數列表
func
testfun
(args ...
int)
//可以迭代
for i, data :=
range args
}//不定引數傳遞
func
testfun
(args ...
int)
func
test
(tmp ...
int)
//無參有返回值
func
testfun()
(result string
)//多個返回值
func
testfun()
(int
,int
,int
)//有參有返回值
func
testfun
(a, b,
int)
(max, min,
int)
else
return max, min
}
package main
import
"fmt"
func
main()
type functype func
(int
,int
)int
func
add(a, b int
)int
package main
import
"fmt"
func
main()
type functype func
(int
,int
)int
func
calu
(a, b int
, mtest functype)
(result int
)//實現加法
func
add(a, b int
)int
//實現減法
func
jdd(a, b int
)int
//無限實現對應的函式
package main
import
"fmt"
func
main()
f1()type functype func()
var f2 functype
f2 = f1
f2()//定義匿名函式同時呼叫
func()
()//帶引數的匿名函式
f3 :=
func
(i, j int)f3
(1,2
)//帶引數的匿名函式同時呼叫
func
(i, j int)(
10,20)
//有引數有返回值
f4, f5 :=
func
(i, j int
)(max, min int
)else
return max, min }(
10,20)
fmt.
println
("f4:"
, f4)
fmt.
println
("f5:"
, f5)
}
package main
import
"fmt"
func
main()
f1()type functype func()
//宣告
var f2 functype
f2 = f1
f2()//定義匿名函式同時呼叫
func()
()//帶引數的匿名函式
f3 :=
func
(i, j int)f3
(1,2
)//帶引數的匿名函式同時呼叫
func
(i, j int)(
10,20)
//有引數有返回值
f4, f5 :=
func
(i, j int
)(max, min int
)else
return max, min }(
10,20)
fmt.
println
("f4:"
, f4)
fmt.
println
("f5:"
, f5)
fmt.
println
("--------------"
)//傳統函式
fmt.
println
(test()
) fmt.
println
(test()
) fmt.
println
(test()
) fmt.
println
(test()
) fmt.
println
(test()
) fmt.
println
("--------------"
)//閉包的特性
f :=
test01()
fmt.
println(f
()) fmt.
println(f
()) fmt.
println(f
()) fmt.
println(f
()) fmt.
println(f
())}
//傳統函式
func
test()
int//閉包函式
func
test01()
func()
int}
package main
import
"fmt"
func
main()
package main
import
"fmt"
func
main()
package main
import
"fmt"
func
main()
()a =
11 b =
21//輸出 11 21
}
package main
import
"fmt"
import
"os"
func
main()
//輸出 xx.go a b
}
package main
//匯入 1
import
"fmt"
//匯入 2
import
("fmt"
)//匯入 3 不需要函式呼叫
import
."fmt"
//匯入 4 起別名
import put "fmt"
//匯入 5 忽略此包
import
_"fmt"
func
main()
package main
import
("calu"
"fmt"
)func
main()
學習第二天筆記
所有識別符號都應該以字母 a z或者a z 美元符號 或者下劃線 開始。首字元之後可以是字母 a z或者a z 美元符號 或者下劃線 或數字的任何字元組合。不能使用關鍵字作為變數名或者方法名。識別符號是大小寫敏感的。合法識別符號舉例 age salary value 1 value 非法識別符號舉例...
函式第二天
形參 在定義函式時的引數 實參 在呼叫函式時的引數 形參與實參的關係 在呼叫時實參會繫結形參 繫結關係只能在函式體內使用 實參與形參的繫結關係只有呼叫時生效,而呼叫結束後則解除繫結關係 實參傳值 形式一 func 1,2 形式二 a 1 b 2 func a,b 形式三 func int 1 2 形...
學習go語言的第二天
一 執行go程式由幾種方式 1 方式一 使用go run命令 stepl 使用快捷鍵win r,輸入cmd開啟命令列提示符 step2 進入helloworld.go所在的目錄 step3 輸入go run helloworld.go命令並觀察執行結果。2 方式二 使用go build命令 step...