代码地址 可以根据git log查看
变量类型
- bool,string
- (u)int,(u)int8,(u)int16,(u)int32,(u)int64,uintptr(地址)!uintptr介绍
- byte,rune(相当于char类型,这里是32位的。但是不是一个字节长度,英文为一个字节,中文2-3个字节,为了应对多国语言设置)
- float32,float64,complex64,complex128(复数)
- 复数:i的平方为-1 3+4i=3的平方+4的平方取平方根为5
- 强制类型转换
- 类型加上括号
- float 类型可能会导致数据不准确
常量定义
- 使用const标识
- const [类型] 变量名=值
- const 也可以使用括号一次定义多个
- 常量不建议使用全大写,因为go的大小写和作用域相关
- 枚举类型
- iota 自增实现
uint 无符号整型 32或64
uint8
uint16
uint32
uint64
int
int8...
var a int8=127;
fmt.Println(a+1) //输出-128 双向链表,指针向后1,就成了最开始的位置
int 和 int8 类型的数字比较会报错,类型不一致的错误
byte uint8的别名
rune int32别名
uintptr 无符号整形,用于存放指针的无符号整形
float32
float64
complex64 32位实数和虚数
complex128 64位实数和虚数
//字符串
len(str)
+ 或者fmt.Sprintf 拼接
strings.Split 分割
strings.Contains 判断包含
strings.HasPrefix 前后缀判断
string.Index() string.LastIndex() 子串位置
strings.Join(string,sep) 连接
//类型转换
strconv 库 int8()强制转换等
//下划线用法
import (
_ "xxx" //只会执行包的init方法,不引用包
)
网友评论