简写方法
//常量的定义
const(
PI = 3.14
const1 = "1"
const2 = 2
const3 = 3
)
//全局变量的声明与赋值
var(
name = "gopher"
name1 = "1"
name2 = 2
name3 = 3
)
//一般类型声明
type(
newType int
type1 floot32
type2 string
type3 byte
)
基本类型
布尔型:bool
- 长度:1字节
- 取值范围:true,false
- 注意事项:不可以用数字代表true或者false
整型:int/uint
- 根据运行平台可能为32位或64位
8位整型:int8/uint8
- 长度:1字节
- 取值范围:-128 ~ 127 / 0 ~ 255
字节型:byte(uint8别名)
类型零值
零值并不等于空值而是当变量被声明为某种类型后的默认值,通常情况下值类型的默认值为0,bool 为 false,string为空字符串。
单个变量的声明与赋值
- 变量的声明格式:var<变量名称><变量类型>
- 变量的赋值格式:<变量名称>=<表达式>
- 声明的同时赋值:var<变量名称>[变量类型]=<表达式>
var a int //变量的声明
a = 123 //变量的赋值
//变量声明的同时赋值
var b int = 321
//上行的格式可省略 变量类型,由系统推断
var c = 321
//变量类型与赋值的最简写法
d: = 456
类型转换
- Go中不存在隐式转换,所有类型转换必须显式声明
- 转换只能发生在两种互相兼容的类型之间(整型和布尔型不能相互转换)
- 类型转换的格式:
ValueA := TypeOfValueA ( ValueB )
//在互相兼容的两种类型之间进行的转换
var a float32 = 1.1
b := int(a)
//以下表达式无法通过编译
var c bool = true
d := int(c)
运行以下代码
var a int = 65
b := string(a)
fmt.Println(b)
运行结果:
string()表示将数据转换成文本格式,因为计算机中存储的任何东西本质上都是数字,因此此函数自然地认为我们需要的是用数字65表示的文本A
var a int = 65
b := strconv.Itoa(a)
// a = strconv.Atoi(b) //a转换为65
fmt.Println(b)
运行结果: