美文网首页
Go语言的变量和常量

Go语言的变量和常量

作者: VienFu | 来源:发表于2019-11-15 18:36 被阅读0次

1. 变量

1.1 变量声明

变量声明的标准格式:
var <变量名称> <变量类型>
变量名称的首字母大小写则决定该变量可否被外部引入,变量类型Go语言中支持很多种比如常见的int、string、bool、byte、float32等。

除了标准格式的声明外,还有两种带初始化的变量声明:
var <变量名称> = <变量值>,会根据初始化变量具体的值来确定变量的类型,且使用范围没有限制;
<变量名称> := <变量值>,简短模式的变量声明且带有显式初始化,不过这种方法仅限于在函数内部使用;

另外,变量的声明还支持如下的使用形式:

// 同时声明同一类型的多个变量
var a, b int
// 支持批次声明
var (
  a int
  b string
  help bool
  array0 [10]int
  slice0 []int
)

1.2 变量初始化

关于变量的初始化方法其实上面变量声明中已经基本上都已经涉及到了,还要一种对应标准格式的初始化方法:
var <变量名称> <变量类型> = <变量值>

最后注意,一旦变量被声明之后,在Go的内存中其实都已经被初始化了,系统自动赋予它该类型的零值:int 为 0,float 为 0.0,bool 为 false,string 为空字符串,指针为 nil等。

2 常量

go语言的常量通常使用const关键字来声明,并且常量的数据类型只可以是布尔型、数字型和字符串型,一般的定义格式如下:
const 变量名称 [变量类型] = 变量值,跟变量相比,一般常量除了由关键字var --> const外,定义规则基本上跟变量保持一致,另外常量还支持枚举类型,比如:

const (
  UNKNOWN = 400
  SUCCESS = 200
  ERROR = 500
)

并且常量可以用函数计算表达式的值,不过这些函数必须是go的内置函数,否则编译不过。

特殊常量iota

常量声明可以使用 iota 常量生成器初始化,它用于生成一组以相似规则初始化的常量,但是不用每行都写一遍初始化表达式。在一个 const 声明语句中,在第一个声明的常量所在的行,iota 将会被置为 0,然后在每一个有常量声明的行加一,下面看几个相关的例子:

  • Example1
const (
  a = iota //a=0
  b        //b=1
  c        //c=2
  d        //d=3
  e = "welcome"
  f
  g = iota
  h
  i
)
  • Example2
const (
  a = 1 << iota // a=1
  b = 3 << iota // b=6
  c             //c=12
  d            //d=24
)

相关文章

  • Go语言常量和变量

    变量 Go语言变量的定义 定义变量的格式(先定义再初始化)var 数据名称 数据类型数据名称 = 值; 定义变量的...

  • Go常量变量_002

    Go 常量变量 变量 go语言中变量名由字母、数字、下划线组成,其中首个字符不能为数字。Go 语言中关键字和保留字...

  • Go语言常量和输入输出

    常量 Go语言常量和C语言差不多Go语言定义常量const不能少,数据类型可以不写Go语言定义常量不能用:=Go语...

  • Go语言的变量和常量

    1. 变量 1.1 变量声明 变量声明的标准格式:var <变量名称> <变量类型>变量名称的首字母大小写则决定该...

  • Go语言学习笔记,持续更新...

    Go 学习笔记 Go语言变量和常量 1. 标识符 2. 关键字 Go语言中有25个关键字 break ...

  • 【Go 语言教程】Go 语言常量变量和运算符

    每一门语言都会有常量的定义,变量的定义,以及基于这些定义的运算,那么本次将进行Go语言的常量,变量和运算符进行介绍...

  • Go语言的变量、函数、Socks5代理服务器

    Go语言中变量的声明和JavaScript很像,使用var关键字,变量的声明、定义有好几种形式 1. 变量和常量 ...

  • Go语言-程序实体与关键字

    任何Go语言源码文件都由若干个程序实体组成的。在Go语言中,变量、常量、函数、结构体和接口被统称为“程序实体”,...

  • Go语言的主要特征

    Go语言的主要特征: Golang文件名: Go语言命名: 1.Go的函数、变量、常量、自定义类型、包(packa...

  • Go 学习笔记 基础语法 变量

    定义包内变量(Go语言里面没有全局变量) 函数内定义变量 定义常量 const 枚举类型

网友评论

      本文标题:Go语言的变量和常量

      本文链接:https://www.haomeiwen.com/subject/exxipctx.html