#GoLang

告别GOPATH,快速使用 go mod(Golang包管理工具)

如果你还在使用GOPATH模式来开发Golang程序,那么你可以参考本文来告别GOPATH,并带给你一个方便的包管理工具。关于gomod的说明和简单使用,可以参考:1、Go1.1.1新功能module的介绍及使用2、IntroductiontoGoModules3、Go1.11Modules官方说明文档使用gomod管...

Golang中基础的命令行模块urfave/cli

前言相信只要部署过线上服务,都知道启动参数一定是必不可少的,当你在不同的网络、硬件、软件环境下去启动一个服务的时候,总会有一些启动参数是不确定的,这时候就需要通过命令行模块去解析这些参数,urfave/cli是Golang中一个简单实用的命令行工具。安装通过gogetgithub.com/urfave/cli命令即可完...

Golang的一个CLI框架

因为机缘巧合,因为希望能在VPS中使用百度网盘,了解到了一个开源的项目BaiduPCS-Go,可以用来直接存取访问百度网盘,做的相当不错而且看ISSUES,作者可能还是个学生,很强的样子。稍微看了下代码,发现了一个很不错的用来写命令行程序CLI的框架,也是在Github上开源的,因为Golang主要是用来写这个的,所以...
代码星球 ·2020-10-02

Golang- import 导入包的几种方式:点,别名与下划线

包的导入语法   在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下:   import(     "fmt"   )  然后在代...

Golang 数组和切片

数组是类型相同的元素的集合。例如,整数5,8,9,79,76的集合就构成了一个数组。Go不允许在数组中混合使用不同类型的元素(比如整数和字符串)。varvariable_name[SIZE]variable_type有很多声明数组的方式,让我们一个一个地介绍。packagemainimport("fmt")funcma...
代码星球 ·2020-10-02

golang depth read map

Foreword: Ioptimizedandimprovedthebelowsolution,andreleaseditasalibraryhere: github.com/icza/dyno.Thecleanestwaywouldbetocreatepredefinedtypes(structu...
代码星球 ·2020-10-02

golang 多级json转map

funcmain(){jsonStr:=`{"isSchemaConforming":true,"schemaVersion":0,"unknown.0":[{"email_address":"test1@uber.com"},{"email_address":"test2@uber.com"}]}`dynamic:=...
代码星球 ·2020-10-02

GoLang中 json、map、struct 之间的相互转化

1.golang中json转struct  <1.使用json.Unmarshal时,结构体的每一项必须是导出项(importfield)。也就是说结构体的key对应的首字母必须为大写。请看下面的例子:packagecommontestimport("testing""encoding/json")typePer...

golang 数据类型之间的转换

一、基本数据类型之间的转换1、string到int  int,err:=strconv.Atoi(string)  2、string到int64  int64, err := strconv.ParseInt(string,&nb...

Golang中用interface{}接收任何参数与强转

函数的传值中,interface{}是可以传任意参数的,就像java的object那样。下面上我第一次想当然写的**错误**代码packagemainfuncmain(){Any(2)Any("666")}funcAny(vinterface{}){v1:=int(v)println(v1)}我只是想它能通过编译而已,...

golang struct结构体初始化的几种方式

typeUserstruct{Idint`json:"id"orm:"auto"`//用户名Usernamestring`json:"username"`}funcmain(){//值类型u1:=models.User{}varu2models.User//指针类型u3:=new(models.User)u4:=&am...

golang单例模式

1、定义:单例对象的类必须保证只有一个实例存在,全局有唯一接口访问。2、分类:  懒汉方式:指全局的单例实例在第一次被使用时构建。饿汉方式:指全局的单例实例在类装载时构建。3、实现: (1)懒汉方式  1typesingletonstruct{}2varins*singleton3funcGetIns()*s...
代码星球 ·2020-10-02

Golang 单例模式 singleton pattern

在Java中,单例模式的实现主要依靠类中的静态字段。在Go语言中,没有静态类成员,所以我们使用的包访问机制和函数来提供类似的功能。来看下下面的例子:packagesingleton           &nbs...

golang可见性规则(公有与私有,访问权限)

   Go语言没有像其它语言一样有public、protected、private等访问控制修饰符,它是通过字母大小写来控制可见性的,如果定义的常量、变量、类型、接口、结构、函数等的名称是大写字母开头表示能被其它包访问或调用(相当于public),非大写开头就只能在包内使用(相当于priv...

golang init方法和main方法初始化顺序

init()和main()方法是golang默认的两个方法,不需要我们调用,程序执行会自动寻找项目中的这俩方法。现在我们就讲一种通用的情况:main包下导入了init2包而在init2包下又导入了init3包,三个包下都有自己的init方法,初始化的顺序又是怎么的呢?先看一段代码://demo_init1.gopack...
首页上一页...56789...下一页尾页