随笔分类 - GO
go学习
摘要:Go 开发中,我们会构造各种 struct 对象,经常会有 json、数据库表、yaml、toml 等数据结构转 strcut 的需求。这时,我们可以根据字段名和数据类型来将这些数据结构,手动地填充至 Go 代码的 strcut 。但当数据字段很多时,这种方式不但耗时耗力,还容易出现一些低级错误。
阅读全文
摘要:https://mp.weixin.qq.com/s/3Nsm_CFE7r60f6vFyyWkuw 前段时间在我的 Go 读者群里,有小伙伴们在纠结切片(slice)的问题,我写了这篇《Go 切片这道题,吵了一个下午!》,引起了一拨各种讨论,还是比较欣慰的。 这不,有小伙伴给我提出了新的题材: 来自
阅读全文
摘要:https://iswbm.com/golang-interview-qa
阅读全文
摘要:package mainimport ( "fmt")type ins interface {}接口的比较有 type 跟data值,如果type,data初始都nil,就相等,如果接口重新赋予类型等于nil的时(s *type=nil),此时接口也不相等!func main() { var i,x
阅读全文
摘要:func add(args ...int) int { sum := 0 for _, arg := range args { sum += arg } return sum } A. add(1, 2) B. add(1, 3, 7) C. add([]int{1, 2}) D. add([]in
阅读全文
摘要:https://geektutu.com/post/quick-golang.html 接口(interfaces) 一般而言,接口定义了一组方法的集合,接口不能被实例化,一个类型可以实现多个接口。 举一个简单的例子,定义一个接口 Person和对应的方法 getName() 和 getAge():
阅读全文
摘要:1 Protocol Buffers 简介 protobuf 即 Protocol Buffers,是一种轻便高效的结构化数据存储格式,与语言、平台无关,可扩展可序列化。protobuf 性能和效率大幅度优于 JSON、XML 等其他的结构化数据格式。protobuf 是以二进制方式存储的,占用空间
阅读全文
摘要:C 和 Go 都是有指针概念的语言,这篇文章主要借这两者之间的异同来加深对 Go 指针的理解和使用。 运算符 C 和 Go 都相同: & 运算符取出变量所在的内存地址 * 运算符取出指针变量所指向的内存地址里面的值,也叫 “ 解引用 ” C 语言版示例: #include <stdio.h>int
阅读全文
摘要:原创 写代码的明哥 Go编程时光 昨天 函数类型(function types)是一种很特殊的类型,它表示着所有拥有同样的入参类型和返回值类型的函数集合。 如下这一行代码,定义了一个名叫 Greeting 的函数类型 type Greeting func(name string) string 这种
阅读全文
摘要:4.1. 前提 假设我们现在有moduledemo和mypackage两个包,其中moduledemo包中会导入mypackage包并使用它的New方法。 mypackage/mypackage.go内容如下: package mypackage import "fmt" func New(){ f
阅读全文
摘要:https://geektutu.com/post/box-tools.html
阅读全文
摘要:type DataInLine struct { Id string Name string Age string} func StrctToSlice(f DataInLine) []string { v := reflect.ValueOf(f) ss := make([]string, v.N
阅读全文
摘要:ggaaooppeennngg · 2014-10-04 19:26:06 · 16819 次点击 · 预计阅读时间 3 分钟 · 大约1分钟之前 开始浏览 这是一个创建于 2014-10-04 19:26:06 的文章,其中的信息可能已经有所发展或是发生改变。 package main impor
阅读全文
摘要:例如:我们要导入gin包,最开始我直接输入go get -u github.com/gin-gonic/gin会出现以下的问题: 确保下载git# cd F:\goworkspace\src\github.com\gin-gonic\gin; git pull --ff-onlyfatal: not
阅读全文
摘要:b:= []byte(`{"Test":"cheyunhua","Age",19,"Inst":["name","age"]}`)var f interface{}err = json.Unmarshal(b,&f)f = map[string]interface{}{ "Name": "Wedne
阅读全文
摘要:fmt.Println(http.ListenAndServe(":8080", http.FileServer(http.Dir("D://downloads/"))))
阅读全文
摘要:转载于https://staight.github.io/archives/ 代理是网络中的一项重要的功能,其功能就是代理网络用户去取得网络信息。形象的说:它是网络信息的中转站,对于客户端来说,代理扮演的是服务器的角色,接收请求报文,返回响应报文;对于web服务器来说,代理扮演的是客户端的角色,发送
阅读全文
摘要:func main() { var m sync.Mutex fmt.Print("A, ") m.Lock() go func() { time.Sleep(200 * time.Millisecond) m.Unlock() }() m.Lock() fmt.Print("B ")} 在 mai
阅读全文

浙公网安备 33010602011771号