Kotlin Program to Lookup enum by String value

Example: Lookup enum by string value

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

fun main(args: Array<String>) {

    val style = "Bold"

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

    println(textStyle)

}

When you run the program, the output will be:

BOLD

In the above program, we've an enum TextStyle which represents the different styles a block of text can have, i.e. Bold, Italics, Underline, Strikethrough.

We also have a string named style which holds the current style we want. However, it is not in all-caps.

We then use the enum TextStyle's valueOf() method to pass the style and get the enum value we require.

Since, valueOf() takes case-senstitive string value, we had to use toUpperCase() method to convert the given string to upper case.

If, instead, we'd used:

TextStyle.valueOf(style)

the program would've thrown an exception No enum constant EnumString.TextStyle.Bold.

Here's the equivalent Java code: Java program to lookup enum by string value.

Did you find this article helpful?

Your builder path starts here. Builders don't just know how to code, they create solutions that matter.

Escape tutorial hell and ship real projects.

Try Programiz PRO
  • Real-World Projects
  • On-Demand Learning
  • AI Mentor
  • Builder Community