跳到主要内容

Kotlin程序通过字符串值查找枚举

示例:通过字符串值查找枚举

enum class TextStyle {
BOLD, ITALICS, UNDERLINE, STRIKETHROUGH
}

fun main(args: Array<String>) {

val style = "Bold"

val textStyle = TextStyle.valueOf(style.toUpperCase())

println(textStyle)

}

当您运行该程序时,输出如下:

BOLD

在上面的程序中,我们有一个枚举 TextStyle,它代表了文本块可以具有的不同样式,即加粗(Bold)、斜体(Italics)、下划线(Underline)、删除线(Strikethrough)。

我们还有一个名为 style 的字符串,它保存了我们想要的当前样式。然而,它并不是全部大写的。

然后,我们使用枚举 TextStylevalueOf() 方法传递样式,并获取我们需要的枚举值。

由于 valueOf() 接受大小写敏感的字符串值,我们必须使用 toUpperCase() 方法将给定的字符串转换为大写。

如果我们使用了以下方式:

TextStyle.valueOf(style)

程序会抛出异常 No enum constant EnumString.TextStyle.Bold

以下是等效的Java代码:Java程序:通过字符串值查找枚举