Go学习笔记之变量和常量

hnxxwyq · · 2017 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

1 变量 

1-1 声明

在 Go 语言中声明变量使用关键字 var

例如

var int_a int; // 多数情况下分号可以省略

 

在声明的同时没有初始化值时,Go 会给基础类型设置默认值,

int     0
int8    0
int32   0
int64   0
uint    0x0
rune    0 //rune的实际类型是 int32
byte    0x0 // byte的实际类型是 uint8
float32 0 //长度为 4 byte
float64 0 //长度为 8 byte
bool    false
string  ""

 

声明的同时也可以赋值初始化,例如

var int_a int =1

 

声明同时赋值可以简单缩写为

int_a := 1

 

1-2 多个相同类型的声明

多个相同类型的声明可以简写为

var a, b, c int

也可以同时赋值

var a, b, c int = 1, 2, 3

也可以简写为

a, b, c := 1, 2, 3

 

1-3 多个不同类型的声明

多个不同类型的声明可以简写为

var (

    a int 

    b string

)

也可以同时赋值

var (

    a int  = 1

    b string = "abc"

)

 

1-4 特殊的空标识 _

任何赋值空标识  _ 的都会丢弃,一般用来做返回值有多个值时,但可能只用到其中的几个,只保留用到值,其他的值可以舍弃。

 a, _, c := 1, 2, 3

数值 2 会被丢弃掉

 

2 常量

2-1 声明

在 Go 语言中声明变量使用关键字 const,常量的值只能是 bool、string 或数字类型中的一种。

例如 

const a int = 1

因为声明常量必须初始化,所以type可以省略,即

const a = 1

 

2-2 多个相同类型的声明

多个相同类型的声明可以简写为

const a, b = 1, 2

 

2-3 多个不同类型的声明

多个不同类型的声明可以简写为 

const (

    a = 1

    b = "abc"

    c = false

)

 

2-4 特殊的关键字iota

Go里面有一个关键字iota,这个关键字用来声明enum的时候采用,它默认开始值是0,每调用一次加1

const (

    a = iota // a = 0

    b            // b = 1

    c            // c = 2

iota也可以参与运算,例如

const (
    a = 1 << iota  // a = 1 (iota has been reset)    1*2^0
    b = 1 << iota  // b = 2                                      1*2^1
    c = 1 << iota  // c = 4                                       1*2^2
)

 

参考资料

《Go语言.云动力》

《Go Web 编程》

 

 

 


有疑问加站长微信联系(非本文作者)

本文来自:CSDN博客

感谢作者:hnxxwyq

查看原文:Go学习笔记之变量和常量

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2017 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传