在 go 中除了以 var 声明变量之外,还有一种简短的变量声明方式:=,比如上面
例子,可以如下简单声明:
age := 10
这种方式和上面的例子等价,但是少了 var 和变量类型,所以简短方便,用的
多。使用这种方式,变量的类型由 go 根据值推导出来,比如这里默认是 int。
有了变量,就少不了常量,和 var 关键字不一样,go 的常量使用 const 声明,
这个和 C 里的常量一样。
const age = 10
这样就声明了一个常量 age,其值是 10,因为我们这里没有指定常量的类型,
所以常量的类型是根据值推导出来的。所以等价的我们也可以指定常量类型,
如下:
const age int = 10
相比来说,java 下的常量定义就要复杂一些,要有 static final 修饰符,才是常
量:
private static final int AGE = 10;
这个和 go 的实现等价,但是它的定义修饰符比 go 多多了,而且常量类型不能
省略。
我们上面的 go 例子中我特意用了小些的变量名 age,甚至常量我也没有写成
AGE,但是在 java 中,对于常量我们的习惯是全部大些。
在 go 中不能随便使用大小写的问题,是因为大小写具有特殊意义,在 go 中,
大些字母开头的变量或者函数等是 public 的,可以被其他包访问;小些的则是