摘要: 点击查看代码 package main import ( "encoding/json" "fmt" "reflect" // 这里引入reflect模块 ) func testTag1(){ type A struct { B string `tag1:"b" tag2:"B" tag3:"d"` 阅读全文
posted @ 2022-03-06 23:54 ty1539 阅读(75) 评论(0) 推荐(0) 编辑
摘要: package main import ( "fmt" ) type User struct{ Username string Sex string Age int AvatarUrl string } func initUser1() { var user *User fmt.Printf("us 阅读全文
posted @ 2022-03-06 23:36 ty1539 阅读(155) 评论(0) 推荐(0) 编辑
摘要: json 序列化 package main import ( "encoding/json" "fmt" ) type User struct { UserName string `json:"姓名"` // 有了tag,序列化出来的就是tag中的名字 Sex string `json:"性别"` 阅读全文
posted @ 2022-03-06 23:27 ty1539 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 点击查看代码 package main import( "fmt" ) func testIf(){ var num int =2 if num == 1{ fmt.Printf("num:%d num==1 \n",num) }else if num == 2{ fmt.Printf("num:% 阅读全文
posted @ 2022-03-06 23:17 ty1539 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 点击查看代码 package main import ( "fmt" ) func testFor1() { var i int for i = 1; i <= 10; i++ { fmt.Printf("i=%d\n", i) } fmt.Printf("最终的i=%d\n", i) } func 阅读全文
posted @ 2022-03-06 23:12 ty1539 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 点击查看代码 package main import "fmt" // 选择排序 func insert_sort(a [8]int) [8]int { for i := 1; i<len(a); i++{ for j := i; j>0; j--{ if a[j] < a[j-1] { a[j], 阅读全文
posted @ 2022-03-06 22:57 ty1539 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 点击查看代码 package main import ( "fmt" "math" ) func justify(n int) bool { sqrtN := int(math.Sqrt(float64(n))) if n <= 1 { return false } for i := 2; i < 阅读全文
posted @ 2022-03-06 21:46 ty1539 阅读(33) 评论(0) 推荐(0) 编辑
摘要: package main import ( "fmt" ) func rangeStr() { var str string = "asdf 7461 ASDX 我打扫" utfChars := []rune(str) fmt.Println("str>>",str,len(str),"utfCha 阅读全文
posted @ 2022-03-06 21:29 ty1539 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 注意:testdefer3() defer 与testdefer4() defer匿名函数 的区别,这是易错点 package main import ( "fmt" ) // defer在函数返回的时候执行,多用于资源释放(打开文件,打开数据库连接,函数返回之后,关闭连接) func testde 阅读全文
posted @ 2022-03-06 19:24 ty1539 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 注意,先声明变量之后,通过for循环累加, for循环之后变量的值,跟着变化 点击查看代码 package main import "fmt" var a int =100 func testLocalVariable(){ var b int = 50 var a int = 501 //同时存在 阅读全文
posted @ 2022-03-06 19:14 ty1539 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 注意: 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 阅读全文
posted @ 2022-03-06 19:00 ty1539 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 点击查看代码 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 阅读全文
posted @ 2022-03-06 18:21 ty1539 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 点击查看代码 package main import "fmt" func main() { var f = Adder() // 只要f变量存货,add函数中的x就一直存活,所有的变量都会随着x的变化而变化 fmt.Print(f(1)," \n") fmt.Print(f(20)," \n") 阅读全文
posted @ 2022-03-06 18:18 ty1539 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 点击查看代码 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 阅读全文
posted @ 2022-03-06 18:15 ty1539 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 点击查看代码 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] = 阅读全文
posted @ 2022-03-06 17:00 ty1539 阅读(52) 评论(0) 推荐(0) 编辑
摘要: package main import ( "fmt" ) func testMake1() { var a []int //a = make([]int, 1, 10) // 切片如果直接使用a = append(a, 11)可以不初始化, 直接a[0] = 10这样赋值,必须初始化 fmt.Pr 阅读全文
posted @ 2022-03-06 12:32 ty1539 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 点击查看代码 package main import ( "fmt" "math/rand" ) func testInterface() { var a interface {} // interface可以存储任何类型的值 fmt.Printf("00>> a=%#v %T\n",a,a) if 阅读全文
posted @ 2022-03-06 11:52 ty1539 阅读(44) 评论(0) 推荐(0) 编辑
摘要: package main import ( "fmt" "math/rand" "time" ) func modify(a map[string]int) { a["modify001"] = 1000 } // map是引用类型,复制和赋值都是源引用,跟着变化 func testMap() { 阅读全文
posted @ 2022-03-06 00:01 ty1539 阅读(33) 评论(0) 推荐(0) 编辑