go - 如何将字符串转换为其他结构

标签 go

当前代码

var rdi rules.RuleDirection
switch direction{
case "ingress":
    rdi = "ingress"
case "egress":
    rdi = "egress"
}

方向是字符串类型
rdi是rules.RuleDirection类型

如何将方向转换为rdi,而不使用当前代码,这很复杂

最佳答案

由于RuleDirection似乎是从字符串派生的:

rdi:=rules.RuleDirection(direction)

但是,您可能需要在转换之前验证值:
if direction!="ingress" && direction!="egress" { 
  // error
}
rdi:=rules.RuleDirection(direction)

关于go - 如何将字符串转换为其他结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61742063/

相关文章:

macos - 升级到 Mac OS 10.9.3 后 Bash 无法识别 go

go - 有没有更好的方法来编辑带有消息过期时间间隔的kafka主题?

json - Go map[int]struct JSON 编码(marshal)

MongoDB Atlas Golang mgo包 "No reachable servers"错误

go - sensulib 包接口(interface)作为函数参数

windows - 获取 Dos (8.3) 文件名

ajax - Golang、Ajax - 如何在成功函数中返回 slice 或结构?

go - 如何在除 Godeps 和 .git 之外的所有文件夹上运行 goimports?

json - 解码 JSON 响应时遇到问题

docker - 如何为 Docker Alpine 镜像构建静态 Go 二进制文件?