diff options
author | Divay Prakash <divayprakash@users.noreply.github.com> | 2019-08-05 17:44:37 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-05 17:44:37 +0530 |
commit | 87ea4291793f8af9c5bed9f148c8f94ba800e102 (patch) | |
tree | cd5c3214adedaf1ed5e27d8292869bfa0f153d7c | |
parent | 11885877e7105ca2e021f5ca7075bfa101cf479a (diff) | |
parent | 99bab9d9e9f8063b8e8d9a76393fbf782a5ec0da (diff) |
Merge pull request #3593 from ashraf-patel/feature/ashraf/kotlin-enum
[Kotlin/en] Kotlin enum
-rw-r--r-- | kotlin.html.markdown | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/kotlin.html.markdown b/kotlin.html.markdown index 9336d217..5bbf6847 100644 --- a/kotlin.html.markdown +++ b/kotlin.html.markdown @@ -350,11 +350,22 @@ fun helloWorld(val name : String) { // Enum classes are similar to Java enum types. enum class EnumExample { - A, B, C + A, B, C // Enum constants are separated with commas. } - fun printEnum() = println(EnumExample.A) // => A +// Since each enum is an instance of the enum class, they can be initialized as: +enum class EnumExample(val value: Int) { + A(value = 1), + B(value = 2), + C(value = 3) +} +fun printProperty() = println(EnumExample.A.value) // => 1 + +// Every enum has properties to obtain its name and ordinal(position) in the enum class declaration: +fun printName() = println(EnumExample.A.name) // => A +fun printPosition() = println(EnumExample.A.ordinal) // => 0 + /* The "object" keyword can be used to create singleton objects. We cannot instantiate it but we can refer to its unique instance by its name. |