go语言学习之路 二:变量

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

说道变量,首先应该提一提关键字,因为不能把关键字当做变量来声明。

关键字:

下面列出GO语言的关键字或保留字:

break

default

func

interface

select

case

defer

go

map

struct

chan

else

goto

package

switch

const

fallthrough

if

range

type

continue

for

import

return

var

 

除了以上介绍的这些关键字,Go 语言还有 36 个预定义标识符,其中包含了基本类型的名称和一些基本的内置函数,见下表:

append

bool

byte

cap

close

complex

complex64

complex128

uint16

copy

false

float32

float64

imag

int

int8

int16

uint32

int32

int64

iota

len

make

new

nil

panic

uint64

print

println

real

recover

string

true

uint

uint8

uintptr

 

这些关键字和保留字不需要特意去记,先走马观花看看,在以后的编程过程中会反复看到这些身影。

 

变量

声明变量的一般形式是使用 var 关键字:var identifier type。需要注意的是,Go 和许多编程语言不同,它在声明变量时将变量的类型放在变量的名称之后。

示例:

var a int

var b bool

var str string

或者可以写成这样:

var (

    a int

    b bool

    str string

)

变量声明后会被自动初始化为该类型的零值,这一点和C语言是有差别的。

在变量的命名规则遵循骆驼命名法,也就是说单个单词小写,每个新的单词的首字母大写,例如:numShips 和 startDate。如果你的全局变量希望能够被外部包所使用,则需要将首个单词的首字母也大写。

全局变量:一个变量(常量、类型或函数)在程序中都有一定的作用域。如果一个变量在函数体外声明,则是全局变量,可以在整个包甚至外部包(被导出后)使用,不管你声明在哪个源文件里或在哪个源文件里调用该变量。

局部变量:它们的作用域只在函数体内,参数和返回值变量也是局部变量。函数体结束,该局部变量的生命周期也就结束了。一般情况下,局部变量的作用域可以通过代码块(用大括号括起来的部分)判断。

声明和赋值:

声明与赋值(初始化)语句组合起来。

示例:

var identifier [type] = value

var a int = 15

var b bool = false

如果你比较懒的话,再声明的同时赋值也可以这样写:

声明与赋值(初始化)语句也可以组合起来。

示例:

var a = 15

Var b = false

或者这样:

Var{

a = 15

B =false

}

最简洁的一种声明并赋值的写法是这样的:

a:=1

因为编译器是可以根据右边的值自动推断出你的变量的类型。变量部分比较简单,就说这么多吧

 


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

本文来自:博客园

感谢作者:chase-wind

查看原文:go语言学习之路 二:变量

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

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