GolangGolangGolang

golang入门之变量和常量

2017-05-16  本文已影响104人  2f1b6dfcc208
一.定义变量

1.定义单个变量

//方式1
var varName typeName
varName = value
//方式2
var varName typeName = value
/*
var a int
a = 10
var b int = 11
*/

注:方式1不能在函数外赋值, go不支持在函数外赋值与调用操作(在声明变量时值可以初始化),否则报错expected declaration, found 'IDENT'

var varName = value
/*
var c = 10
*/

go支持自动类型推导,会根据value(值)的类型自动定义varName变量的类型

varName := value
/*
d :=10
*/

自动类型推导,系统根据value的类型自动定义varName变量的类型,同样不能在函数外使用,否则报错syntax error: non-declaration statement outside function body

2.定义多个变量

//方式1
var varName1,varName2,varName3 typeName
varName1,varName2,varName3 =val1,val2,val3
/*
var a,b,c int
a,b,c = 1,2,3
*/
//方式2
var varName1,varName2,varName3 typeName= val1,val2,val3
/*
var a,b,c int = 1,2,3

注:方式1同上不能在函数外赋值

var varName1,varName2,varName3 = val1,val2,val3
/*
var a,b,c = 1,"hello",false
*/
varName1,varName2,varName3 := val1,val2,val3
/*
a,b,c := 1,"world",true
*/

注:此方式同上,只能在函数内使用

_,varName2 := val1,val2  //丢弃val1,varName2 = val2
//方式1,声明多个变量但未赋值
var (  
    varName1 type  
    varName2 type  
) 
//方式2,声明多个变量并赋初值
var (  
    varName1 = val1  
    varName2 = val2 
)  
/*
var (
    a = 1
    b = "hello"
)
*/
2.定义常量
const constName [type] = val
//const pi = 3.14
//定义常量时type可省略,编译时系统会根据值的类型自动推导出constName的类型
const (  
    constName1 [type] = val1  
    constName2 [type] = val2  
)      
/*
const (
    a = 1
    b = 2
)
*/
注:value的值可以是表达式,但不能为运行时才能知道结果的表达式
上一篇 下一篇

猜你喜欢

热点阅读