Avatar ·

Kotlin में ऑब्जेक्ट का प्रकार (instanceof) कैसे जांचें?

सभी को नमस्ते! मैंने अभी-अभी Java के बाद Kotlin सीखना शुरू किया है और एक समस्या का सामना किया। Java में मैं ऑब्जेक्ट का प्रकार जांचने के लिए `instanceof` ऑपरेटर का उपयोग करता था, उदाहरण के लिए: ```java if (obj instanceof String) { String str = (String) obj; System.out.println(str.length()); } ``` लेकिन Kotlin में मुझे इसका कोई समकक्ष नहीं मिल रहा। मैंने `obj instanceof String` जैसा कुछ लिखने की कोशिश की, लेकिन कंपाइलर त्रुटि देता है। मुझे पता है कि Kotlin में `is` कीवर्ड है, लेकिन मुझे यकीन नहीं है कि इसका सही उपयोग कैसे करें। इसके अलावा, Java में `instanceof` जांच के बाद मुझे स्पष्ट रूप से प्रकार बदलना पड़ता था, जबकि Kotlin में, जहां तक मैं समझता हूं, यह स्वचालित रूप से होता है? या नहीं? कृपया मुझे बताएं कि Kotlin में ऑब्जेक्ट का प्रकार सही तरीके से कैसे जांचें और सुरक्षित रूप से आवश्यक प्रकार में कैसे बदलें? मुझे न केवल मूल सिंटैक्स बल्कि सर्वोत्तम प्रथाओं में भी रुचि है। उदाहरण के लिए, अगर `when` एक्सप्रेशन में या कलेक्शन के साथ काम करते समय प्रकार जांचना हो तो क्या करें? पहले से धन्यवाद! मेरे कोड का उदाहरण जो काम नहीं करता: