语言数据类型
变量概念
变量声明,初始化与赋值
- 单个变量的声明与赋值
- 变量的声明格式: var <变量名称> [变量类型]
- 变量的赋值格式:<变量名称> = <值,表达式,函数等>
- 声明和赋值同时进行:var <变量名称> [变量类型] = <值,表达式,函数等>
- 分组声明格式:
- 同一行声明多个变量和赋值:
var a, b, c int = 1, 2, 3
或者a, b : = 1, 2
- 全局变量的声明必须使用
var
关键词,局部变量则可以省略 - 特殊变量下划线
_
(垃圾桶)
变量的类型转换
- Go中不存在隐式转换,类型必须是显示的
- 类型转换只能发生在两种兼容类型之间
- 类型转换格式 :
<变量名称> [:] = <目标类型>(<需要转换的变量>)
变量可见性规则
- 大写字母开头的变量是可导出的,也就是其他包可以读取的,是公用变量
- 小写字母开头的就是不可导出的,是私有变量
常量,常量声明及iota的使用
变量代码讲解
常量定义
常量定义形式和常量类型范围
-
常量定义从形式上可以分为显式 和 隐式;
- 显式:*** const 常量名称 [常量类型] = 常量值 ***
- 隐式: const 常量名称 = 常量值 (通常叫无类型常量)
-
常量可以使用内置表达式定义,例如
len()
,unsafe.Sizeof()
等; -
常量范围目前只支持布尔、数字(整数、浮点、复数) 和 字符串;
特殊常量 iota 的使用
- iota在const关键字出现时将被重置为0;
- const中每新增一行常量声明将使iota计数一次;
- iota常见用法
- 只能在常量中使用,不能在方法中使用
- 跳值使用法;
- 插队使用法;
- 表示式隐式使用法;
- 单行使用法;