1.GO111MODULEGO111MODULE为off时go编译程序的查找依赖的顺序gopathgoroot,为on时,会读取当前项目的go.mod.文件,在go.mod文件中会记录有哪些依赖
1.单元测试文件必须以_test.go结尾2.测试用例函数必须以Test开头,一般来说是Test+被测试的函数名3.形参类型必须是(ttesting.T)4.gotestv,输入日志。不加v只会输出错误的日志5.t.Fatalf()输出格式化错误日志6.t.Logf()输出相应日志7.测试命令go//测试所有文件gotestv//测试单个文件gotestvcal_test.gocal.go//测试
1.并发vs并行go1.并发:多线程程序在单核上运行,同一时间只会执行一个线程。2.并行:多线程程序在多核上运行,在不同的cpu核心上同时执行多个线程。
1.sort.ints()//对一个int型的数组/切片进行排序
1.接口go//接口的定义typeXXXinterface{method1(args...)intmethod2(args...)bool}a.go的接口只能定义一些未实现的方法,不能定义属性b.接口的设计体现了高内聚低耦合的特性。c.go中接口不需要显式实现,不用implement关键字,d.只要结构体实现了接口的所有方法,调用接口时自动实现。
1.fmt.Scanf(format,args)2.fmt.Scanln(args)
1.defer关键字godeferxxx//会把一条语句压入到一个栈//函数执行完毕后会先入后出的顺序执行。//通常用来执行资源的释放(文件读取、数据库连接)file:=open("file.txt")deferfile.close()2.函数的参数go1)两种传递参数方式,值传递:拷贝变量副本2)引用传递:拷贝变量的地址,效率更高
1.声明变量govara,bstrings,sep:="",""2.输出gofmt.Println(i)//换行输出fmt.3.for循环gofor_,arg:=rangeos.Args1:{}4.字符串操作gostrings.Join(os.Args0:,"+")//字符串连接5.网络请求goresp,err:=http.Get(url)//获取一个网页
%d十进制整数%x十六进制整数%b二进制整数%o八进制整数%f%g%e浮点数%t布尔型%c字符串,unicode码点%s字符串%q带引号的字符串%v内置格式的任何值%T任何值的类型%%百分号本身
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号