1.编写含有导入包的代码package mainimport "fmt"import "rsc.io/quote" // 编辑器可能会提示找不到,不要着急 这个执行run的时候会自动下载func main() {fmt.Println(quote.Go()) }2.生成go.mod记录导入包的版本等信息// hello 可以换成其他的字符 go mod init hello3.执行run命令自动导入引入的外部包go run hello.go4.国内会出现导入外部包超时问题,在命令行输入以下内容解决// 引用自 https://blog.csdn.net/qingshuiwater/ar...
今天遇到了一个小坑:使用etcdv3的时候,报了这么一堆错误# github.com/coreos/etcd/clientv3/balancer/resolver/endpointvendor\github.com\coreos\etcd\clientv3\balancer\resolver\endpoint\endpoint.go:114:78: undefined: resolver.BuildOptionvendor\github.com\coreos\etcd\clientv3\balancer\resolver\endpoint\endpoint.go:182:31: undefined: resolver.ResolveNowOption# github.com/coreos/etcd/clientv3/balancer/pick...
package main import("fmt"_"sort"_"math/rand" ) //type WuDangMaster struct {Name stringAge int }func (master *WuDangMaster) kongfu() {fmt.Println(master.Name,"秘籍:武当太极十三式") }//apprentice 美 /?‘pr?nt?s/ n. 学徒;生手 type apprentice struct{WuDangMaster //匿名结构体,继承WuDangMaster结构体内的字段(属性)及方法 }func main(){var appr apprentice = apprentice{WuDangMaster{Name:"张翠山",Age:30,...
在 Go 语言中数组是固定长度的数据类型,它包含相同类型的连续的元素,这些元素可以是内建类型,像数字和字符串,也可以是结构类型,元素可以通过唯一的索引值访问,从 0 开始。一旦数组被声明了,那么它的数据类型跟长度都不能再被改变。如果你需要更多的元素,那么只能创建一个你想要长度的新的数组,然后把原有数组的元素拷贝过去。转载请注明出处: 要去赶火车了,等回家再更新!原文:http://www.cnblogs.com/SSSR/p/6351820....
先看实现代码:package main import ( "crypto/md5" "encoding/hex" "fmt" ) func main() { h := md5.New() h.Write([]byte("123456")) // 需要加密的字符串为 123456 cipherStr := h.Sum(nil) fmt.Println(cipherStr) fmt.Printf("%s\n", hex.EncodeToString(cipherStr)) // 输出加密结果 }代码输入效果:说明:Golang的加密库都放在crypto目录下,其中MD5库在crypt...
最近开发项目时候发现一个结构体的Json转换的时间格式问题。即这种1993-01-01T20:08:23.000000028+08:00 这种表示UTC方法。从我们习惯来说,更喜欢希望的是1993-01-01 20:08:23这种格式。重新复现代码如下:package mainimport ( "time" "encoding/json" )type Student struct { Name string `json:"name"` Brith time.Time `json:"brith"` }func main() { stu:=Student{ Name:"qiangmzsx", ...
从进程开始,搜索和理解进程Google 搜索关键词: C fork example 什么是forkFork系统调用用于创建一个称为子进程的新进程,该子进程与进行fork()调用的进程(父进程)同时运行。创建新的子进程后,两个进程都将在fork()系统调用之后执行下一条指令。子进程使用与父进程相同的pc(程序计数器),相同的CPU寄存器,相同的打开文件。 fork返回值它不带任何参数,并返回一个整数值。以下是fork()返回的不同值。 负值:创建子进程...
type User struct { Id int `json:"id" orm:"auto"` // 用户名 Username string `json:"username"`}func main() { //值类型 u1:=models.User{} var u2 models.User //指针类型 u3:=new(models.User) u4:=&models.User{} var u5 *models.User fmt.Println(u1) fmt.Println(u2) fmt.Println(u3) fmt.Println(u4) fmt.Println(u5)}输出:{0 }{0 }&{0 }&{0 }————————————————版权声明:本文为CSDN博主「章...
golang语言的数组 切片和字典package main import ( "fmt" )func main(){ var a[10] int //定义一个数字长度为10,存储int类型 a[0] = 10 // 存储 a[1] = 20 a[2] = 30 a[3] = 40 fmt.Println(a[0],a[1],a[2],a[3]) //通过序列打印 fmt.Println(a) //打印整个数组,因为定义长度为10,而我们只存了4个,所有后面的部分将以零值填充。 // 运行结果 10 20 30 40 [...
Golang 中读取文件大概有三种方法,分别为: 1. 通过原生态 io 包中的 read 方法进行读取 2. 通过 io/ioutil 包提供的 read 方法进行读取 3. 通过 bufio 包提供的 read 方法进行读取 下面通过代码来验证这三种方式的读取性能,并总结出我们平时应该使用的方案,以便我们可以写出最优代码:package mainimport ("os""io""bufio""io/ioutil""time""log" )func readCommon(path string) {file, err := os.Ope...
匿名函数var f = func(int) {}func main() {f = func(i int) {fmt.Println(i)}f(2)f = func(i int) {fmt.Println(i * i * i)}f(2) } /* 输出: 2 8 */ 接:https://blog.csdn.net/qq_35976351/article/details/81986496上述代码中,f可以被任何输入一个整型,无返回值的函数给赋值,这类似于C++中的函数指针。因此f可以看成是一个函数类型的变量。这样,可以动态的改变f的功能。匿名函数可以动态的创建,与之成对比的常规函数必须在...
变量Go语言是静态强类型语言,所以变量是有明确类型的。变量实质上就是在内存中的一小块空间,用来存储特定类型的可变数据。如果没有变量我们的程序只能将数值写死都是静态的数据,无法更改,变量可以让我们进行动态的操作。在数学概念中变量表示没有固定的值,可以随时改变的数。例如:除数、减数与被减数。类型 变量内可以存储哪种类型的数据。值 变量内存储的具体的值。地址 在计算机中可以找到变量的位置,计算机为变量开辟的一...
实例 import ("fmt""net/http""strings" )func myHandler(w http.ResponseWriter, r *http.Request) {//解析参数,默认是不会解析的r.ParseForm()fmt.Fprintf(w, "%v\n", r.Form)fmt.Fprintf(w, "path:%s\n", r.URL.Path)fmt.Fprintf(w, "schema:%s\n", r.URL.Scheme)//get查询字符串fmt.Fprintf(w, "form:%s\n", r.Form)//控制台打印for k, v := range r.Form {fmt.Println("key: ", k)fmt.Println("value: ", strings.Join(v, ""...
下载地址:https://golang.google.cn/dl/ 配置 GOROOT是golang的安装目录GOPATH是以后存golang项目的目录原文:https://www.cnblogs.com/zyfeng/p/15117991.html
github.com/go-xorm/xorm xorm库http://www.xorm.io/docs/ 手册xorm是一个简单而强大的Go语言ORM库. 通过它可以使数据库操作非常简便。xorm的目标并不是让你完全不去学习SQL,我们认为SQL并不会为ORM所替代,但是ORM将可以解决绝大部分的简单SQL需求。在xorm里面,可以同时存在多个Orm引擎,一个Orm引擎称为Engine,一个Engine一般只对应一个数据库。Engine通过调用xorm.NewEngine生成,如:var engine *xorm.Engine在使用前,记...