随笔分类 - go
摘要:注意: go的defer和defer匿名函数,中输出的i值不一样 点击查看代码 package main import "fmt" func testFunc3(){ var i int =0 fmt.Printf("testFunc3 i=%d\n",i) defer fmt.Printf("de
阅读全文
摘要:点击查看代码 package main import "fmt" func add(base int) func(int) int { return func(i int) int { fmt.Printf(" 000 base=%d,i=%d\n",base,i) base += i fmt.Pr
阅读全文
摘要:点击查看代码 package main import "fmt" func main() { var f = Adder() // 只要f变量存货,add函数中的x就一直存活,所有的变量都会随着x的变化而变化 fmt.Print(f(1)," \n") fmt.Print(f(20)," \n")
阅读全文
摘要:点击查看代码 package main import ( "fmt" "strings" "time" ) func Adder() func(int) int { var x int = 3 return func(d int) int { x += d return x } } func tes
阅读全文
摘要:点击查看代码 package main import ( "fmt" ) func testSlice() { var a []int if a == nil { fmt.Printf("a is nil\n") } else { fmt.Printf("a=%v\n", a) } //a[0] =
阅读全文
摘要:package main import ( "fmt" ) func testMake1() { var a []int //a = make([]int, 1, 10) // 切片如果直接使用a = append(a, 11)可以不初始化, 直接a[0] = 10这样赋值,必须初始化 fmt.Pr
阅读全文
摘要:点击查看代码 package main import ( "fmt" "math/rand" ) func testInterface() { var a interface {} // interface可以存储任何类型的值 fmt.Printf("00>> a=%#v %T\n",a,a) if
阅读全文
摘要:package main import ( "fmt" "math/rand" "time" ) func modify(a map[string]int) { a["modify001"] = 1000 } // map是引用类型,复制和赋值都是源引用,跟着变化 func testMap() {
阅读全文
摘要:*** 对指针类型,取值, 对数值类型&取址** 点击查看代码 package main import( "fmt" ) func modify(a *int){ *a = 100 // 对指针类型,*取值, 对数值类型&取址 } func testInt2(){ var a int = 10 fm
阅读全文
摘要:点击查看代码 package main import ( "fmt" "strings" ) func statWordCount(str string) map[string]int { var result map[string]int = make(map[string]int,128) wo
阅读全文
摘要:点击查看代码 package main import ( "fmt" "math/rand" "time" ) func sumArray(a [10]int) int { var sum int = 0 for i := 0; i < len(a); i++ { sum = sum + a[i]
阅读全文
摘要:点击查看代码 package main import ( "fmt" ) func testArray1() { var a [5]int fmt.Println(a) a[0] = 200 a[1] = 300 fmt.Println(a) } func testArray3() { //var
阅读全文
摘要:package main import( "fmt" ) func testPoint5(){ var a *int = new(int) // 用new初始化,就可以直接赋值了 如果直接用var a *int 之后直接赋值,就报错 *a = 100 fmt.Println(" *a = 100 "
阅读全文
摘要:点击查看代码 package main import ( "flag" "fmt" "math/rand" "time" ) var ( length int charset string ) const ( NumStr = "0123456789" CharStr = "ABCDEFGHIKLM
阅读全文
摘要:点击查看代码 package main import( "fmt" "sort" ) func main(){ var a [5]int = [5]int {5,4,3,2,1} sort.Ints(a[:]) fmt.Println("a",a) var b [5]string = [5]stri
阅读全文
摘要:1,拆分版 main/main.go package main import ( "fmt" "net/http" ) func main() { http.HandleFunc("/", SimpleServer) fmt.Println("Starting server...") err :=
阅读全文
摘要:package main import ( "fmt" "net/http" "sync" "time" ) var urls = []string{ "https://www.baidu.com", "https://www.google.cn", "https://taobao.com", "h
阅读全文
摘要:go http-form 表格获取数据 package main import ( "fmt" "io" "net/http" ) var form string = `<!DOCTYPE html> <html> <head> <title></title> </head> <body> <for
阅读全文
摘要:package main import "fmt" func main() { /* panic:词义"恐慌", recover:"恢复" go语言利用panic(),recover(),实现程序中的极特殊的异常的处理 panic(),让当前的程序进入恐慌,中断程序的执行 recover(),让程序
阅读全文
摘要:Day 05 Go 中的 struct 用来自定义复杂数据结构。 struct 里面可以包含多个字段(属性)。 struct 类型可以定义方法,注意和函数的区别。 struct 类型是值类型。 struct 类型可以嵌套。 Go 语言没有 class 类型,只有 struct 类型。 struct
阅读全文

浙公网安备 33010602011771号