3 回答
![?](http://img1.sycdn.imooc.com/54584cde0001d19202200220-100-100.jpg)
TA贡献1891条经验 获得超3个赞
不。您可以为作业标题分配任何值:
e.JobTitle=JobTitleType("bogus")
基于字符串,因此所有字符串值都可以转换为它。JobTitleType
可以使用 getter/setter 来强制实施运行时验证。
![?](http://img1.sycdn.imooc.com/54584e120001811202200220-100-100.jpg)
TA贡献1829条经验 获得超7个赞
不,它不会限制值,任何具有类型的值都可以分配给 JobTitle。目前,Go 中没有类型。为了限制值,您可能需要编写自己的逻辑。JobTitleType
enum
![?](http://img1.sycdn.imooc.com/545866c40001561502200220-100-100.jpg)
TA贡献1883条经验 获得超3个赞
否,应在验证逻辑中使用它。例如,具有用于验证的运算符。https://github.com/go-playground/validatoroneOf
去没有类型,但你可以做这样的事情enum
package main
import (
"fmt"
)
var JobTitleTypes = newJobTitleTypeRegistry()
func newJobTitleTypeRegistry() *jobTitleTypeRegistry{
return &jobTitleTypeRegistry{
GradeATitle : "Clerk",
GradeBTitle : "Manager",
}
}
type jobTitleTypeRegistrystruct {
GradeATitle string
GradeBTitle string
}
func main() {
fmt.Println(JobTitleTypes.GradeATitle)
}
- 3 回答
- 0 关注
- 69 浏览
添加回答
举报