kotlin - 如何从 Kotlin 中的 Int 创建枚举?
问题描述
我有这个enum
:
enum class Types(val value: Int) {
FOO(1)
BAR(2)
FOO_BAR(3)
}
如何enum
使用? 创建一个实例Int
?
我试着做这样的事情:
val type = Types.valueOf(1)
我得到了错误:
整数文字不符合预期的字符串类型
解决方案
enum class Types(val value: Int) {
FOO(1),
BAR(2),
FOO_BAR(3);
companion object {
fun fromInt(value: Int) = Types.values().first { it.value == value }
}
}
您可能希望为范围添加安全检查并返回 null。
推荐阅读
- javascript - 连接 NextJS、next-i18next、with-redux、with-redux-saga:“错误:如果您的自定义 _app.js 文件中有 getInitialProps 方法...”
- unity3d - 统一 if 语句即使是真的也不会起作用
- python - 列包含列
- c# - 当我尝试将文件复制到“//192.168.0.22”之类的共享路径时,访问被拒绝错误
- android - 如何获取回收站当前可见项目位置
- jquery - 如何格式化通过 AJAX 从 ASPX JSON 解析的日期?
- css - 有没有办法在反应中使用我的样式作为外部 css 文件?
- c - C中寄存器存储类的存储分配?
- cypress - 如何让赛普拉斯只处理可见元素?
- python - 如何解释 scipy.interpolate.splrep 的结果?