网站首页 返回列表 “慢生活”不是懒惰,放慢速度不是拖延时间,而是让我们在生活中寻找到平衡。
golang操作json
Encodegolang和json的类型对应关系如下:*bool类型--JSON的Boolean*整数,浮点数等数值类型--JSON的Number*string--JSON的字符串(带""引号)*struct--JSON的Object(再根据各个成员的类型递归打包)*数组或切片--JSON的Array*[]byte--...
阅读全文
golang-字符串
字符串比较相等__funcmain(){fmt.Println("ADN"=="ADN")fmt.Println("ADN"=="adn")fmt.Println(strings.Compare("ADN","ADN"))fmt.Println(strings.Compare("ADN","adn"))fmt.Prin...
阅读全文
Golang 中的指针
指针的定义_Apointerisavaluethatpointstothememoryaddressofanothervariable._指针是一个指向另一个变量内存地址的值。示例1__packagemainimport("fmt")funcmain(){a:=200b:=&afmt.Println("a-->",a)...
阅读全文
Golang 数组与分片
与数组的区别*数组是固定长度的,而分片确实可动态增长的,以定义为例:__//定义数组,一定要指定长度varnames[5]string//定义分片,不需要指定长度varnames[]string*在函数调用时,数组是值传递,而分片是引用传递其实对于`golang`来讲,函数调用的时候都是值传递,拷贝一个副本,之所以表现...
阅读全文
Golang code review comments 【译文】
>>翻译自:注释*注释应该是一段完整的语句*注释应该以所描述内容的名字开头,并且以句号结尾声明空的切片应该使用:`vart[]string`,而不是:`t:=[]string{}`前者会避免内存分配,除非使用了`append()`不要使用`panic`对于普通的错误处理,不要使用`panic`,使用error和多返回值...
阅读全文
Golang:使用 httprouter 构建 API 服务器
>[https://medium.com/@gauravsingharoy/build-your-first-api-server-with->httprouter-in->golang-732b7b01f6ab](https://links.jianshu.com/go?to=https%3A%2F%2Fmedium...
阅读全文
Golang 时间格式化
在go语言中,时间格式化比较奇怪,必须用这个标准时间“2006-01-0215:04:05-0700”,有网友开玩笑的说,因为好记你看拆开不就是1234567吗,01020204050607好像真的是哎,如果不用标准时间用别的就会出错。__packagemainimport("time""log")funcmain()...
阅读全文
Golang:使用自定义模板发送邮件
>[https://medium.com/@itsHabib/sending-emails-with-go-using-a-custom->template->ae863b65a859](https://links.jianshu.com/go?to=https%3A%2F%2Fmedium.com%2F%40itsH...
阅读全文
Golang单例模式
单例模式,是一种常用的软件设计模式,在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。1\.懒汉模式(LazyLoading)懒汉模式是开源项目中使用最多的一种,最大的缺点是非线程安全的__typesingletons...
阅读全文
Golang 中 Post & Get 请求
主要记录一下使用过程中碰到的问题。主要参考:&[超时设置](https://link.jianshu.com?t=http://colobu.com/2016/07/01/the-complete-guide-to-golang-net-http-timeouts/)三方库:&[自己的fork](https://lin...
阅读全文
golang错误处理加强版
为了方便分享,特地把blog抄到这里==实在是对代码中到处打印错误日志的现象难以忍受,于是琢磨了一个优雅一些的错误处理方式.特地整理出来分享一下.源码地址:需求*我想知道原始错误出现在哪里,还有对应的函数调用栈是怎样的*我想给某个函数返回的错误加上点其他信息再返回,但是又想保留原始错误信息*可能还需要一个状态码用来标识...
阅读全文
golang 实现简单定时器
一般我们导入import("time")包,然后调用time.NewTicker(1*time.Second)实现一个定时器:__functimer(){//新建计时器,120秒以后触发,go触发计时器的方法比较特别,就是在计时器的channel中发送值tick:=time.NewTicker(120*time.Sec...
阅读全文
Golang读写文件的几种方式
最近在使用Golang进行文件读写的过程中,遇到几个细节问题导致程序写入数据时有一定脏数据的残留,最后发现是使用`os.OpenFile`在进行文件操作的时候没有使用正确的`flag`造成的。因此专门去学习了下Golang中读写文件的几种方式方法。读文件使用golang语言去读取一个文件默认会有多种方式,这里主要介绍以...
阅读全文
一起用golang之Go程序的套路
系统性地介绍golang基础的资料实在太多了,这里不再一一赘述。本文的思路是从另一个角度来由浅入深地探究下Go程序的套路。毕竟纸上得来终觉浅,所以,能动手就不要动口。有时候几天不写代码,突然间有一天投入进来做个东西,才恍然发觉,也只有敲代码的时候,才能找回迷失的自己,那可以忘掉一切的不开心。Helloworld__pa...
阅读全文
Golang 优化之路——bitset
写在前面开发过程中会经常处理集合这种数据结构,简单点的处理方法都是使用内置的map实现。但是如果要应对大量数据,例如,存放大量电话号码,使用map占用内存大的问题就会凸显出来。内存占用高又会带来一些列的问题,这里就不展开说了。还有就是,大量数据存放于map,查找的哈希算法消耗也会很高。这时就该考虑对数据结构进行优化。之...
阅读全文