When we have a fixed set of predefined constants, it is considered a good practice grouping them in an enum
type.
Sample Usage
1. Simple Enum
[wp_ad_camp_1]
| package exercise01.enumtest /** * Created by Turreta.com on 19/6/2017. */ enum class ProductStatus { NEW, SHIPPED, PACKED, WITH_DEFECT } |
Sample usage:
| fun main(args: Array<String>) { println(ProductStatus.NEW) println(ProductStatus.WITH_DEFECT) println(ProductStatus.PACKED == ProductStatus.valueOf("PACKED")) } |
Outputs:
2. Enum with Instance Method and Field
[wp_ad_camp_2]
| package exercise01.enumtest /** * Created by Turreta.com on 19/6/2017. */ enum class Seasons(val seasonName: String) { WINTER("winter"), SPRING("spring"), SUMMER("summer"), FALL("fall"); fun toUpper() : String { return seasonName.toUpperCase() } } |
Sample usage:
| package exercise01.enumtest fun main(args: Array<String>) { println(Seasons.FALL) println(Seasons.SPRING.toUpper()) println(Seasons.WINTER.ordinal) } |
Outputs:
3. List all Enum types
[wp_ad_camp_3]
| package exercise01.enumtest fun main(args: Array<String>) { Seasons.values().forEach { println(it) } } |
Outputs:
References
https://kotlinlang.org/docs/reference/enum-classes.html
[wp_ad_camp_4]
846 total views
, 1 views today
Got comments or suggestions?
We disabled the comments on this site to fight off spammers,
but you can still contact us via our
Facebook page!.