go
gentelyang
呵呵
展开
-
go语言介绍
Go语言(或称Golang)是云计算时代的C语言。Go语言的诞生是为了让程序员有更高的生产效率,Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。Go语言优势:可直接编译成机器码,不依赖其他库,glibc的版本有一定要求,部署就是扔一个文件上去就完成了。 静态类型语言,但是有动态语言的感觉,静态类型的语言就是...原创 2019-01-14 10:30:44 · 173 阅读 · 0 评论 -
Go语言之defer应用
defer作用关键字defer用于延迟一个函数或者方法的执行,注意defer语句智能出现在函数或者方法的内部。defer语句经常用于处理成对的操作,如打开、关闭、连接、断开连接、加锁和释放锁。通过defer机制,不论函数逻辑多复杂,都能保证在任何执行路径下,资源被释放,释放资源的defer应该直接跟在请求资源的语句后。多个defer执行顺序如果一个函数中有多个defer语句,它...原创 2019-01-15 14:38:14 · 200 阅读 · 0 评论 -
Go语言递归函数
递归函数可以直接或者间接的调用自身递归函数通常有相同的结构:一个 跳出条件和一个递归体。跳出条件是看根据传入的参数判断是否需要停止递归,而递归体则是函数本身所做的一些处理。Go语言中的函数类型,函数也属于一种数据结构,我们可以通过type来定义它,它的类型就是所有拥有相同参数,相同的返回值的一种类型。匿名函数与闭包闭包就是一个函数捕获了和它在同一作用域的其它常量和变量,...原创 2019-01-15 11:29:30 · 1349 阅读 · 0 评论 -
Go语言之自定义函数
函数构成代码执行的逻辑结构。在Go语言中,函数的基本组成为:关键字func、函数名、参数列表、返回值、函数体和返回语句。Go语言函数定义格式如下:返回类型:① 上面返回值声明了两个变量名o1和o2(命名返回参数),这个不是必须,可以只有类型没有变量名 ② 如果只有一个返回值且不声明返回值变量,那么你可以省略,包括返回值的括号 ③ 如果没有返回值,那么就直接省略最后的返回信息 ...原创 2019-01-14 15:05:18 · 1186 阅读 · 0 评论 -
Go语言条件、循环语句
Go语言支持基本的三种程序运行结构:顺序结构、选择结构、循环结构。选择结构if 初始化字句; 条件表达式Switch语句Go里面switch默认相当于每个case最后带有break,匹配成功后不会自动向下执行其它case,而是跳出整个switch,但是可以使用fallthrough强行执行后面的case代码:可以使用任何类型或表达式作为条件语句:循环语句...原创 2019-01-14 14:41:29 · 517 阅读 · 0 评论 -
Go语言运算符
1.算术运算符在Go语言中,++与-是作为语句而不是作为表达式。关系运算符逻辑运算符位运算符赋值运算符其它运算符运算符优先级在Go语言中,一元运算符拥有最高的优先级,二元运算符的运算方向均是从左至右下表列出了所有运算符以及它们的优先级,由上至下优先级由高到低: ...原创 2019-01-14 13:41:03 · 558 阅读 · 0 评论 -
Go语言基础编程:格式化输出、类型转换和类型别名
fmt.Printf()格式字符串 数据类型转换Go语言不允许隐式转换,所有类型转换必须显示声明,而且转换智能发生在两种相互兼容的类型之间类型别名...原创 2019-01-14 11:30:30 · 180 阅读 · 0 评论 -
Go语言的基础数据类型
1.布尔类型2.整型3.浮点型4.字符类型Go语言支持两种字符类型,一个是byte,代表utf-8字符串中单个字节的值,另一个是rune,代表单个unicode字符5.字符串6.复数类型 ...原创 2019-01-14 11:23:12 · 153 阅读 · 0 评论 -
Go语言的关键字、变量、常量
1.关键字Go语言有25个关键字。30多个预定义的名字,比如int和true等。2.变量从根本上说,变量相当于是对一块数据存储空间的命名,程序可以通过定义一个变量来申请一块数据存储空间,之后可以通过引用变量名来使用这块存储空间。3.变量声明4.变量初始化5.变量赋值6.匿名变量_(下划线)是个特殊的变量名,任何赋予它的值都会被丢弃:7...原创 2019-01-14 11:00:11 · 346 阅读 · 0 评论 -
Go基础编程:获取命令行参数
部署golang项目时难免要通过命令行来设置一些参数,那么在golang中如何操作命令行参数呢?可以使用flag库和os库。1:flag库的使用Go语言标准库提供了用于快迅解析命令行参数的flag包,大致的使用步骤如下: a.通过flag.String(), flag.Bool(), flag.Int()等方式来定义命令行中需要使用的参数。 b.在定义完flag后,通过调用flag.Par...原创 2019-01-16 23:32:19 · 233 阅读 · 0 评论