Golang 命令行参数

Jackey Golang 573 次浏览 1 评论
test.go package main import ( "fmt" "os" ) func main() { fmt.Println("命令行参数有:", len(os.Args)) for i, v := range os.Args { fmt.Printf("args[%v]=%v\n", i, v) } } linux执行命令编...

Golang 文件操作

Jackey Golang 585 次浏览 5 评论 ,
读取文件(带缓冲区) readFile.go package main import ( "bufio" "fmt" "io" "os" ) func main() { // 打开文件 file, err := os.Open("/Users/jackey/Downloads/3.txt") if err != nil { fmt.P...

Golang 类型断言

Jackey Golang 499 次浏览 0 评论 ,
示例 assert.go package main import "fmt" type Point struct { x int y int } func main() { var a interface{} var point Point = Point{1, 2} a = point var b Point b = a.(Point) //类型断言...

Golang 1.14 新特性整理

Jackey Golang 1,358 次浏览 0 评论
go mod modfile 引入 练习 目录结构: common |-go.mod mod1 |-demo14mod |-go.mod |-main.go 代码 common/go.mod module demo14mod go 1.13 require github.com/pkg/errors v0.9.1 mod1/main.go package ...

Golang 接口

Jackey Golang 555 次浏览 0 评论 ,
package main import "fmt" // 定义一个接口 type Usb interface { // 声明两个没有实现的方法 Start() Stop() } type Phone struct { } // 让Phone 实现Usb接口的方法 func (p Phone) Start() { fmt....

Golang 继承

Jackey Golang 528 次浏览 0 评论 ,
package main import "fmt" type Student struct { Name string Age int Score float64 } // 将公有的方法绑定到Student 结构体 func (s *Student) GetInfo() { fmt.Printf("学生姓名=%v, 年龄=%v,成绩=%v \...

Golang 封装

Jackey Golang 526 次浏览 0 评论 ,
person.go package model import "fmt" type person struct { Name string age int // 其他包不能访问 salary int } // 写一个工厂模式的函数,相当于构造函数 func NewPerson(name string) *person { r...

Golang 工厂模式

Jackey Golang 490 次浏览 0 评论 ,
student.go package model type student struct { Name string age int } // 结构体student 首字母小写,因此只能在 model 内部使用 // 如果想外部调用,我们可以通过工厂模式解决 func NewStudent(name string, age ...

go get 超时的解决方法

Jackey Golang 940 次浏览 0 评论
GO 1.13 及以上(推荐) Windows $ go env -w GO111MODULE=on $ go env -w GOPROXY=https://goproxy.cn,direct macOS 或 Linux $ export GO111MODULE=on $ export GOPROXY=https://goproxy.cn 然后再执行 go get

Golang 方法中指针传值的陷阱

Jackey Golang 580 次浏览 1 评论 ,
package main import "fmt" type Person struct { Name string } func (p Person) test1() { p.Name = "www.gopher.cc" fmt.Println(p.Name) } func (p *Person) test2() { p.Name = "www.gopher.cc" ...

Golang 结构体使用注意事项和细节

Jackey Golang 681 次浏览 3 评论 , ,
结构体的所有字段在内存中是连续的 代码: package main import "fmt" // 结构体 type Point struct { x int y int } // 结构体 type Rect struct { leftUp, rightDown Point } // 结构体 type Rect2 str...

Golang 切片在内存中的形式

Jackey Golang 559 次浏览 1 评论 ,
代码示例: package main import "fmt" func main() { var intArr [5]int = [...]int{1, 22, 33, 66, 99} slice := intArr[1:3] fmt.Println("intArr=", intArr) fmt.Println("slice 的元素是 = ", slice) fmt...

Golang 数组的内存布局

Jackey Golang 702 次浏览 2 评论 ,
如下面一段代码: package main import "fmt" func main() { var intArr [3]int fmt.Println(intArr) } 内存布局如下: 对上图的总结: 数组的地址可以通过数组名来获取 &intArr 数组的第一个元素...

Golang 单元测试

Jackey Golang 687 次浏览 0 评论 ,
在package main里定义一个函数Add,求两个数之和的函数,然后我们使用单元测试进行求和逻辑测试。单元测试的最常见以及默认组织方式就是写在以 _test.go 结尾的文件中,所有的测试方法也都是以 Test 开头并且只接受一个 testing.T 类...

beego 定时任务的实现

Jackey Golang 1,204 次浏览 2 评论 ,
[codesyntax lang="c"] package main import ( "github.com/astaxie/beego" "github.com/astaxie/beego/logs" "github.com/astaxie/beego/toolbox" ) func InitTask(){ tk := toolbox.NewTask("generateWarning", "*/...
Go