摘要: 引出channel channel的基本介绍 channel的基本使用 注意事项 1.具体代码(不关闭channel) package main import ( "fmt" ) type Fact struct{ Num int // n Factorial int // n的阶乘 } func 阅读全文
posted @ 2021-02-15 15:13 pangqianjin 阅读(303) 评论(3) 推荐(0) 编辑
摘要: 其实最好的方法是使用动态规划。。。 代码实现(使用goroutine和全局互斥锁) package main import ( "fmt" "sync" "time" ) // 全局变量myMap var ( myMap = make(map[int]int, 20) lock sync.Mutex 阅读全文
posted @ 2021-02-15 14:30 pangqianjin 阅读(169) 评论(0) 推荐(0) 编辑
摘要: ![](https://img2020.cnblogs.com/blog/2261524/202102/2261524-20210215133015842-1825381123.png) ![](https://img2020.cnblogs.com/blog/2261524/202102/2261524-20210215133933504-297904561.png) ![](https://i 阅读全文
posted @ 2021-02-15 13:30 pangqianjin 阅读(145) 评论(0) 推荐(0) 编辑
摘要: ![](https://img2020.cnblogs.com/blog/2261524/202102/2261524-20210215111927251-281884750.png)![](https://img2020.cnblogs.com/blog/2261524/202102/2261524-20210215203457963-1056945285.png) 阅读全文
posted @ 2021-02-15 11:21 pangqianjin 阅读(56) 评论(0) 推荐(0) 编辑
摘要: 结论 指针值则编码其指向的值。 nil指针则编码为空JSON值。通过reflect包中的Elem方法实现。 函数原型 官方文档中是这样说明的: 尝试: package main import ( "fmt" "encoding/json" ) // 定义一个结构体,用于被序列化 type Monst 阅读全文
posted @ 2021-02-15 10:31 pangqianjin 阅读(775) 评论(0) 推荐(0) 编辑
摘要: 如果只是简单地,查看和使用命令行的参数(没有使用-u user等指定参数),可以使用"os.Args"这个切片,里面就存放了命令行参数。 要想使用指定的命令行参数,用flag包中的StringVar和IntVar方法 package main import ( "fmt" "flag" ) func 阅读全文
posted @ 2021-02-15 09:29 pangqianjin 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 使用os.Stat()函数来判断: 它的返回值类型为FileInfo和error: 具体代码为: package main import ( "fmt" "os" ) func PathExist(path string) (bool, error){ switch _, err := os.Sta 阅读全文
posted @ 2021-02-14 16:42 pangqianjin 阅读(345) 评论(0) 推荐(0) 编辑
摘要: 使用"io.ioutil"包中的ReadFile和WriteFile方法实现,被写入的文件: 不存在会先被创建;存在则其中的内容会先被清空 具体代码: package main import ( "fmt" "io/ioutil" ) func main(){ // 将一个文件中的内容写入到另一个文 阅读全文
posted @ 2021-02-14 16:27 pangqianjin 阅读(608) 评论(0) 推荐(0) 编辑
摘要: 使用os.OpenFile()打开文件,flag选择 O_WRONLY|O_TRUNC 即可 具体代码: import ( "fmt" "os" "bufio" ) func main(){ // 打开一个存在的文件,将原来的内容覆盖掉 path := "./hello.txt" // O_WRON 阅读全文
posted @ 2021-02-14 16:05 pangqianjin 阅读(2416) 评论(0) 推荐(0) 编辑
摘要: 使用"os.OpenFile()"打开文件 用带缓冲区的bufio.NewWriter()方法,返回一个*Writer 然后Writer接口中有一个方法, 刚好*File实现了这个方法, 具体代码: package main import ( "fmt" "os" "bufio" ) func ma 阅读全文
posted @ 2021-02-14 15:49 pangqianjin 阅读(326) 评论(0) 推荐(0) 编辑