坚持就是胜利
变量:
true false iota nil
类型:
bool
string
int int8 int16 int32 int64
uint uint8 uint16 uint32 uint64 uintptr
byte就是int8强调原始数据
rune就是int32 强调Unicode 的code point
float32 float64
complex64 complex128
函数:
make len cap new append copy close delete complex real imag panic recover
变量
var value type
下面用int说明:
var v int 定义一个int型变量,默认初始化为0值
var a int = 3
a := 1 自动判断类型
注:=表示赋值 :=表示声明
const a int = 10 或者const a = 10 定义一个常量a
不能给常量进行重新赋值
不能读取常量的地址
iota
Golang中特殊常量:iota为自增量
1. 只能在常量表达式中使用
2. 每次const出现iota都会初始化为0;自定义常量枚举类型,允许靠编译器完成自增设置
3. 可以跳过某些值
4. 位掩码表达式,使用增长的 iota 取得前面的表达式并且再运用它
常用函数
make
func make(Type, size int) Type
第一个参数是一个类型,第二个参数是长度;返回值是一个类型。
make 只能为 slice、map或 channel 类型分配内存并初始化,同时返回一个有初始值引用,不是指针。
len cap
func len(v Type) int 返回长度
func cap(v Type) int返回容量,针对slice 数组 chan
append
append针对slice进行操作
append(sliceVal,elm1,elm2)
sliceVal = append(sliceVal, sliceVal2)
注:s2... 是Golang中一种语法糖表示把s2打散传入。
delete
内建函数 delete 按照指定的键将元素从映射中删除。若 m 为 nil 或无此元素,delete 不进行操作。
func delete(m map[Type]Type1, key Type)
copy
主要是切片(slice)的拷贝,不支持数组。还有就是把字符串当成byte的切片进行拷贝
copy(dest,src)
参考:
https://blog.csdn.net/uudou/article/details/52241534