摘要: 使用"bufio"中的NewReader方法,返回一个带缓冲区的Reader 而*File就实现了io.Reader接口, 具体代码: package main import ( "fmt" "io" "os" "bufio" ) func main(){ file, err := os.Open( 阅读全文
posted @ 2021-02-14 15:03 pangqianjin 阅读(1149) 评论(0) 推荐(0) 编辑
摘要: 使用"os/ioutil"包中的ReadFile方法, func ReadFile(path string) ([]byte, err) package main import ( "fmt" "io/ioutil" ) func main(){ // ioutil包中的ReadFile,一次性读取 阅读全文
posted @ 2021-02-14 14:53 pangqianjin 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 可变参数的原理是:将传入的一个或多个参数转换为一个新的切片。 比如: func add(nums ...int) int { var sum int for _, val := range nums{ sum += val } return sum } func main(){ sum := add 阅读全文
posted @ 2021-02-13 20:46 pangqianjin 阅读(440) 评论(0) 推荐(0) 编辑
摘要: 因为有语法糖,方便程序员(个人认为这不够严谨),底层的编译器还是做了处理 结构体的方法所属者为结构体变量时,此时为值传递,调用者为结构体的指针或结构体变量本身都可以 调用者为结构体本身 结果: 调用者为结构体的指针 结果: 结构体的方法所属者为结构体变量的指针时,此时为引用传递,调用者为结构体的指针 阅读全文
posted @ 2021-02-12 17:04 pangqianjin 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 如果没有别名,字串中字段的名称为大写(结构体中小写的字段将返回空串,因为对其他包不可见) package main import ( "fmt" "encoding/json" ) type Cat struct{ Name string Age int } func main(){ var cat 阅读全文
posted @ 2021-02-12 15:40 pangqianjin 阅读(1324) 评论(0) 推荐(0) 编辑
摘要: package main import ( "fmt" ) type Cat struct{ Name string Age int } func main(){ // 第一种方式,先声明再初始化 var cat1 Cat cat1.Name = "cat1" cat1.Age = 1 fmt.Pr 阅读全文
posted @ 2021-02-12 14:42 pangqianjin 阅读(1320) 评论(0) 推荐(0) 编辑
摘要: 结论:会的 只声明而不分配内存的slice,它的容量应该是0;然后,如果此时使用append函数,会帮助其分配内存,并扩容 运行结果: 阅读全文
posted @ 2021-02-12 10:59 pangqianjin 阅读(458) 评论(0) 推荐(0) 编辑
摘要: 风格1: package main import ( "fmt" ) func BinarySort(arr *[]int, leftIndex, rightIndex, findVal int){ // 判断leftIndex是否大于rightIndex if leftIndex > rightI 阅读全文
posted @ 2021-02-11 16:49 pangqianjin 阅读(89) 评论(0) 推荐(0) 编辑
摘要: package main import ( "fmt" ) func BubbleSort(arr *[]int){ for i:=0;i<len(*arr)-1;i++{ for j:=0;j<len(*arr)-1-i;j++{ if (*arr)[j] > (*arr)[j+1]{ (*arr 阅读全文
posted @ 2021-02-11 16:12 pangqianjin 阅读(62) 评论(0) 推荐(0) 编辑
摘要: LeetCode 101 排序算法Java版 阅读全文
posted @ 2021-01-10 09:12 pangqianjin 阅读(56) 评论(0) 推荐(0) 编辑