golang的一些语法知识(一) | 青训营笔记

66 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天

基础语法:

一、变量的声明:

第一种:仅仅是指定变量的类型。此种声明方式若不赋值,使用的默认值是0。

第二种:用var来定义变量,且要定义一个值。定义完后会根据值来自行判断变量的类型。

第三种:省略var,仅定义个变量名,然后用:=来赋值。同样定义完后也会根据值来自行判断变量的类型。这种方法更多地是用来定义局部变量。

二、常量:

常量即在程序运行时不会被改变的量。
在定义常量时,数据类型只能是布尔型、整数型、浮点数型和字符串型。
在定义常量时,要用到关键字const。
当我们定义常量的数量太多时,我们通常可以在程序之前,运用枚举类型,来定义这些常量。而在枚举常量的时候,我们又会遇到一个不同于其他语言的表示符——iota。当iota标识符为数字时,它还可以实现自增长。

三、函数:

不同于java,golang中的函数返回值可以定义多个。比如:func swap(x, y string) (string, string) 中的(stringstring)就是这个函数的返回值。

init函数与import:
当函数中有导入别的包,又有常量,变量,init函数等存在时,执行顺序如下:首先,执行当前程序的main包,如果main包导入了其他的包,那么在编译时会依次将它们都导入进来。而当一个包被导入时,如果该包还导入了其他包,那么会先将其他包给导进来,再初始化这些其他包中的常量和变量,执行init函数。当执行完init函数后,会返回到导入此包的包中,继续初始化常量和变量,执行init函数...以此类推,最后回到main包时,就会开始初始化main包中的常量和变量,执行init函数以及main函数。