go学习笔记
Go常量
可以是 数值型(整型,浮点型,复数型),布尔型,字符串
通过const 关键字定义,可以限定常量类型,但不是必需。
const PI float64 = 3.141592653
也可以不指定类型
const v = 1
也可以是表达式(常量值可以是一个在编译期运算的表达试)
const mask = 1<<3
但不可以是在执行期间才知道结果的表达式
const Home = os.GetEvn("Home")
三个预定义常量
true,false,iota
特殊形式
const (
v1 = true
v2 = false
)
Go变量
变量声明
var 变量名 类型
变量初始化
var 变量名 类型 = 值
变量赋值
var 变量名 类型
变量名 = 值
Go语言提供了 多重赋值的特性
i,j = j,i
匿名变量(对于不重要的返回值,可以用 _ 这个匿名变量接收)
_, a = getResult()
也有特殊形式
类型
枚举,就是一系列确定的常量
基础类型
布尔类型
var is_up bool;
整型 int8, byte, int16, int, uint, uintptr等
不通类型不可以比较
浮点型 float32,float64
a = 1.0 (a是float64型)
复数类型 complex64 complex128
由俩个浮点数表示,一个实部,一个虚部
complex(实部,虚部)
real(复数变量)
imag(复数变量)
字符串型 string
var str string = "xyz" (定界符 一定是双引号)
字符类型 rune
在Go语言里支持俩个字符类型 byte (uint8的别名) ,另外一个是rune
php里 chr(), ord()
错误类型 error
符合类型
指针(pointer)
数组(array)
var a [10]int
切片(slice)
字典(map)
通道(chan)
结构体(struct)
接口(interface)