这段时间写的东西有些浮肿,先放张图压一压,当然图……
数据类型基础的网上比比皆是,只写一些注意点吧:
数组的长度是数组类型的一部分,且长度一旦声明无法改变因此避免了内存的二次分配操作
切片:针对底层数组中某连续片段的描述,长度可变且不是类型的一部分
切片值=对某底层数组的引用,内部结构:指向底层数组中某元素的指针,切片长度及切片容量(从指针指向的元素到底层数组最后元素的元素个数)
值方法和指针方法:
1.接收者变量的值是源值的复制品,如果值不是指针类型无途径改变源值
2.指针值与复制品指向的是同一个值,可改变源值
3.如接收者类型是引用类型或他的别名类型,即使是值方法也可改变源值
4.非指针与它关联的方法的集合中只含值方法但是能够调用其指针方法(内部自动转换);对于它的指针类型方法集合中含值方法也含指针方法
range:
迭代数组、切片、字符串值时,如:=左只有一个迭代变量时,只会得到其中元素的索引;
迭代无任何元素的数组值、nil的切片值、nil的字典值,""的字符串,不会指向for,长度=0;
迭代nil的通道值 将阻塞当前流程在for语句上;
go的标签那可是相当重要,平白无奇在那躺着的字符串这么就变成了json,能被gorm识别进而进行数据库的操作,怎么接受form表格数据?这些比较入门的知识、你想过么?下面、带你进入标签的世界……还有小彩蛋送个各位
type CartonType struct {
ID uint64 `json:"-"`
RentID string `json:"rent_id"`
CreateTime time.Time `json:"createTime"`
UpdateBy string `json:"updateBy"`
UpdateTime time.Time `json:"updateTime"`
IpAddress int `json:"ipAddress"`
DelFlag int `json:"delFlag"`
Del int `json:"delFlag"`
}
上面这段代码越看越会赶脚眼熟,这里进行了josn和gorm的、可以说是映射,先拿json举例
id那行,json是-表示忽略的意思,字段不需要转json,转成json也是没有id这个字段滴,看看人家id大佬,说了不去那就是不去
最后一行和倒数第二行他们的标签是一样的,不知道各位小可爱有没有看到,如果没有、(●ˇ∀ˇ●)出门左拐,谢谢;既然我这么写了那golang那肯定是支持你这么干的