1、Go代码规范的不同之处:
- 定义无用的变量或导入无用的包,会报错
- 左边花括号
{
不能另起一行,否则报错 - 分支语句
if…else…
的判断条件不加括号,并且else if
和else
不能另起一行 - 每句末尾可以不加分号
;
,编译器会自动加上,如果想多行语句写在一行,就必须加分号 - 空不再用null表示,而是nil
- 一个命令
go fmt ./
格式化当前目录下的所有文件代码
2、var是js的关键字,Go语言里也采用了,但跟js不同的是,在Go里var后面要声明数据类型(当然也可以省略,由右边的赋值来推导出类型)
3、Go语言中多了一个复数数据类型——complex,在其他语言里没有见到过
4、uint8 就是我们熟知的 byte 型,int16 对应C语言中的 short 型,int32 对应C语言中的 long 型。
5、Go 没有 while,用 for 来替代
点评:去除多余语法糖,使语言更简洁
6、如果函数名首字母为小写,则相当于设置了private
点评:通过这样一个小举动,省略了代码量,使语言更简洁
7、获取一个变量的类型
a := 1 // :=中间不能有空格
reflect.TypeOf(a) //输出int
8、获取一个变量值或数组的长度直接使用len()
函数,汉字占3个字节
9、定义不明确元素个数的数组时,Go语言这样定义:
var numbers4 = [...]int{1, 2, 3}
在PHP或js中,都是使用[],而go用省略号三点