Kotlin में कुशल एनम: मान द्वारा रिवर्स लुकअप कैसे करें?
सभी को नमस्ते! मैं हाल ही में Kotlin में लिख रहा हूँ और मुझे इस समस्या का सामना करना पड़ा। \n\nमेरे पास ऑर्डर स्टेटस के लिए एक enum क्लास है:\n\n```kotlin\nenum class OrderStatus(val code: Int) {\n PENDING(1),\n PROCESSING(2),\n SHIPPED(3),\n DELIVERED(4),\n CANCELLED(5)\n}\n```\n\nमैं डेटाबेस से स्टेटस का एक संख्यात्मक कोड प्राप्त करता हूँ (उदाहरण के लिए, 3), और मुझे संबंधित enum मान — `OrderStatus.SHIPPED` प्राप्त करने की आवश्यकता है। \n\nमुझे पता है कि Java में अक्सर रिवर्स लुकअप के लिए एक स्थिर `HashMap` बनाया जाता है। लेकिन Kotlin में यह बोझिल लगता है। मैंने एक extension function लिखने की कोशिश की:\n\n```kotlin\nfun OrderStatus.Companion.fromCode(code: Int): OrderStatus? {\n return values().find { it.code == code }\n}\n```\n\nलेकिन यह धीमा काम करता है, क्योंकि हर बार सभी मानों पर लूप चलता है। 5 स्टेटस के लिए यह क्रिटिकल नहीं है