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