3 回答

TA貢獻(xiàn)1891條經(jīng)驗(yàn) 獲得超3個(gè)贊
不。您可以為作業(yè)標(biāo)題分配任何值:
e.JobTitle=JobTitleType("bogus")
基于字符串,因此所有字符串值都可以轉(zhuǎn)換為它。JobTitleType
可以使用 getter/setter 來(lái)強(qiáng)制實(shí)施運(yùn)行時(shí)驗(yàn)證。

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超7個(gè)贊
不,它不會(huì)限制值,任何具有類型的值都可以分配給 JobTitle。目前,Go 中沒(méi)有類型。為了限制值,您可能需要編寫(xiě)自己的邏輯。JobTitleType
enum

TA貢獻(xiàn)1883條經(jīng)驗(yàn) 獲得超3個(gè)贊
否,應(yīng)在驗(yàn)證邏輯中使用它。例如,具有用于驗(yàn)證的運(yùn)算符。https://github.com/go-playground/validatoroneOf
去沒(méi)有類型,但你可以做這樣的事情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 關(guān)注
- 86 瀏覽
添加回答
舉報(bào)