Tässä ohjelmassa opit muuntamaan merkkijonon arvon Kotlinin enumiksi käyttämällä enum's valueOf () -menetelmää.
Esimerkki: Hae luettelo merkkijonon perusteella
enum class TextStyle ( BOLD, ITALICS, UNDERLINE, STRIKETHROUGH ) fun main(args: Array) ( val style = "Bold" val textStyle = TextStyle.valueOf(style.toUpperCase()) println(textStyle) )
Kun suoritat ohjelmaa, tulos on:
LIHAVOITU
Yllä olevassa ohjelmassa meillä on enum TextStyle, joka edustaa erilaisia tyylejä, joita tekstilohko voi olla, eli lihavoitu, kursivointi, alleviiva, yliviivattu.
Meillä on myös merkkijono nimeltä tyyli, joka pitää sisällään haluamasi tyylin. Se ei kuitenkaan ole kaikki korkit.
Sitten käytämme enum TextStyle's valueOf () -menetelmää tyylin välittämiseen ja tarvittavan enum-arvon saamiseen.
Koska valueOf () vie merkkijonon kirjainkoolla, jouduimme käyttämään toUpperCase () -menetelmää muuntaa annettu merkkijono isoksi.
Jos sen sijaan olisimme käyttäneet:
TextStyle.valueOf (tyyli)
ohjelma olisi heittänyt poikkeuksen No enum constant EnumString.TextStyle.Bold
.
Tässä on vastaava Java-koodi: Java-ohjelma, joka etsii luetteloa merkkijonon perusteella.