本文已参与「新人创作礼」活动,一起开启掘金创作之路。
Go语言的Map(集合)
package main
import "fmt"
func main() {
var countryCapitalMap map[string]string
countryCapitalMap = make(map[string]string)
countryCapitalMap["China"] = "北京"
countryCapitalMap["Korea"] = "韩国棒子"
countryCapitalMap["India"] = "印度阿三"
countryCapitalMap["Japan"] = "日本鬼子"
for country := range countryCapitalMap {
fmt.Println(country, "的首都是", countryCapitalMap[country])
}
capital, ok := countryCapitalMap["American"]
if ok {
fmt.Println("Amerycan 的首都是", capital)
} else {
fmt.Println("American 的首都不存在!")
}
delete(countryCapitalMap, "Japan")
fmt.Println("日本国家条目被删除")
for country := range countryCapitalMap {
fmt.Println(country, "的首都是", countryCapitalMap[country])
}
}
Go语言的递归函数
package main
import "fmt"
func Factorial(n uint64) (res uint64) {
if n > 0 {
res = n * Factorial(n-1)
return res
}
return 1
}
func fibonacci(n int) int {
if n < 2 {
return n
}
return fibonacci(n-2) + fibonacci(n-1)
}
func main() {
var i int = 15
fmt.Printf("%d 的阶乘是 %d\n", i, Factorial(uint64(i)))
var j int
for j = 0; j < 10; j++ {
fmt.Printf("%d\t", fibonacci(j))
}
}
Go语言的类型转换
package main
import "fmt"
func main() {
var sum int = 17
var count int32 = 5
var mean float32
mean = float32(sum) / float32(count)
fmt.Printf("mean 的值为:%f\n", mean)
var a int64 = 3
var b int32
b = int32(a)
fmt.Printf("b 为:%d", b)
}