Loading

【go语言学习】变量variable和常量constant

一、 变量的声明(定义)和使用

变量是为存储特定类型的值而提供给内存位置的名称。变量就是一小块内存,用于存储数据。
变量的使用分为两步:1)声明,2)访问、赋值和取值

1、 标准声明
var a int
a = 10

2、类型推断

var a = 10

3、简短声明

func test() {
    a := 10
}

4、批量声明

var a, b, c int
a, b, c = 1, 2, 3
var x, y, z int = 1, 2, 3
var (
       s = "hello"
       m = 10
       n = 20
)

5、匿名变量

在使用多重赋值时,如果想要忽略某个值,可以使用匿名变量_
匿名变量不占用命名空间,不会分配内存,所以匿名变量之间不存在重复声明。

a, _ := foo()

6、 变量的使用注意事项

  • 变量必须先定义才能使用
  • go语言是强类型语言,变量的类型和赋值的类型必须一致
  • 同一个作用域内变量名不能冲突
  • 简短声明变量:=左边必须有一个变量是新的
  • 简短声明变量,不能定义全局变量
  • 变量的默认值(零值)
  • 变量定义了,就必须使用,否则编译无法通过

二、 常量的声明(定义)和使用

常量是恒定不变的值,多用于定义那些在程序运行期间不会改变的那些值。常量的定义和变量类似,使用关键字const

1、常量声明
const pi = 3.14
const name string = "jack"
2、常量组(枚举)
const (
        MALE = 0
        FEMALE = 1
        UNKNOW = 2
)

常量组中如不指定类型和初始值,则和上一行非空常量值相同

const (
        a = 10              //10
        b                   //10
        c = "name"          //"name"
        d                   //"name"
)
3、常量使用注意事项
  • 常量的数据类型只能是布尔、数字、字符串
  • 常量可以定义,而不使用
  • 常量定义时,必须赋值
4、iota

iota是go语言的常量计数器,只能在常量的表达式中使用
iota在const关键字出现时将被重置为0
const中每新增一行常量声明将使iota累加1

const (
         a = iota     //0
         b            //1
         c            //2
)
const (
            a = iota   //0
            b          //1
            c          //2
            d = "ha"   //独立值,iota += 1
            e          //"ha"   iota += 1
            f = 100    //iota +=1
            g          //100  iota +=1
            h = iota   //7,恢复计数
            i          //8
            -          //跳过,iota += 1
            j          //10
    )
posted @ 2020-10-22 21:18  Every_dawn  阅读(178)  评论(0编辑  收藏  举报