为了账号安全,请及时绑定邮箱和手机立即绑定

如何将别名类型(常量)连接到 strings.Join()

如何将别名类型(常量)连接到 strings.Join()

Go
慕雪6442864 2021-09-09 15:26:36
我有一个包/API,允许传入一个值。例如:type ConstType stringconst (    T_Option1 ConstType = "OPTION-1"    T_Option2 ConstType = "OPTION-2"    T_Option3 ConstType = "OPTION-3")注意这个类型是字符串的别名。我遇到什么我认为是非惯用的步骤是我无法将这种类型别名的[]string切片强制转换或推断为切片。type constTypes struct {    types []ConstType}func (s *constTypes) SetConstTypes(types []ConstType) {    s.types = types}func (s *constTypes) String() string {    // this generates a compile error because []ConstType is not    // and []string.    //    // but, as you can see, ConstType is of type string    //    return strings.Join(s.types, ",")}我把它放在操场上来展示一个完整的例子:http://play.golang.org/p/QMZ9DR5TVR我知道 Go 解决方案是将其强制转换为类型(显式类型转换,喜欢规则!)。我只是不知道如何将类型切片转换为 []string - 不循环遍历集合。我喜欢 Go 的原因之一是强制类型转换,例如:c := T_OPTION1v := string(c)fmt.Println(v)播放:http : //play.golang.org/p/839Qp2jmIz虽然,我不确定如何在不循环的情况下跨切片执行此操作。我必须循环吗?鉴于,循环遍历集合并不是什么大问题,因为最多只能设置 5 到 7 个选项。但是,我仍然觉得应该有一种可转换的方式来做到这一点。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 156 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信