枚举是列出某些有穷序列集的所有成员的程序。
优点:
1、减轻数据的数据存储的压力,数据库不需要保存启动中、进行中、已完成这些占空间且不优雅的状态,可以今仅存储对应的状态码0,1,2即可。
2、前后端、多系统对接的时候也会更加的规范,节约流量,能让我们更清晰动作。
3、让我们变量有更好的识别度,如果状态码变量只存储了0,1,2,以后的日子将是灾难,定义枚举,我们可以通过枚举变量更好的理解他是做什么的?他要表达的意思是什么?
example:
当我们需要对一群学生调研他们修喜欢的课程时,数据库不应该存储语文、数学、英语……,同时我们给到前端的数据也不应该是语文、数学、英语……,使用枚举会更优雅:
package main
import "fmt"
type CourseEnum int
const (
CouMin CourseEnum = iota
CouMandarin
CouMath
CouForeignLanguages
CouPolitics
CouHistory
CouGeography
CouPhysics
CouBiology
CouChemistry
CouMax
)
func (c CourseEnum) GetHat() (hat string) {
switch c {
case CouMandarin:
return "国语"
case CouMath:
return "数学"
case CouFo