变量
变量是内存当中一段空间的抽象描述。变量的类型明确了空间的大小以及空间如何解析。
Go中的变量类型
1 |
bool byte complex64 complex128 error float32 float64 int int8 int16 int32 int64 rune string uint uint8 uint16 uint32 uint64 uintptr |
变量的声明与赋值
方式1
1 |
package main |
方式2
注意,x := “Hello World” 等价于 var x = “Hello World”
自动推断类型,并且必须在函数体内部
1 |
package main |
多样的赋值
1 |
var i int |
例子:
1 |
package main |
零值问题
变量初始化不赋值的情况,默认为空。
例子:
1 |
|
常量
常量一旦声明不能改变,并且常量必须赋予初始值。此代码无效func main() {const x int}
有效:
1 |
package main |
iota 使用
iota从0开始循环
1 |
const ( |
使用案例:
1 |
package main |
变态iota
1 |
package main |
结果:
1 |
i= 1 |
iota表示从0开始自动加1,所以 i=1<<0, j=3<<1(<<表示左移的意思),即:i=1,j=6,这没问题,关键在k和l,从输出结果看 k=3<<2,l=3<<3。
简单表述:
• i=1:左移 0 位,不变仍为 1;
• j=3:左移 1 位,变为二进制 110, 即 6;
• k=3:左移 2 位,变为二进制 1100, 即 12;
• l=3:左移 3 位,变为二进制 11000,即 24。
本文链接: https://dreamerjonson.com/2018/11/17/golang-3-variables/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY 4.0 CN协议 许可协议。转载请注明出处!