कृपया वास्तविक "कार्यक्षमता" को अनदेखा करें और यहां लैम्ब्डा के उपयोग पर अधिक ध्यान केंद्रित करें क्योंकि मैं कोटलिन के लिए महसूस करने के लिए लैम्ब्डा, लेट, भी, रन आदि के साथ हैकिंग कर रहा हूं।
val listener : (String?)->String = {
val s2 = it?.also {
}
?: "Null"
statusText.text=s2
s2
}
तो "श्रोता" के लिए लैम्ब्डा का यह असाइनमेंट ठीक है।
क्या कोई मुझे बता सकता है कि मैं पहले (और केवल) पैरामीटर को नाम निर्दिष्ट करने में असमर्थ क्यों हूं।
val listener : (s: String?)->String = {
val s2 = s?.also {
}
?: "Null"
statusText.text=s2
s2
}
लाइन में "वैल s2 = s?. भी ..." संकलक शिकायत करता है कि "s" एक अनसुलझा संदर्भ है। यदि ऐसा है तो पैरामीटर का नामकरण कानूनी क्यों है जैसे:
val listener : (s: String?)->String = {
कोई स्पष्टीकरण मेरी समझ में बहुत मददगार होगा।
1 उत्तर
यह होना चाहिए
val listener : (s: String?) -> String = { s ->
val s2 = s?.also {
} ?: "Null"
statusText.text=s2
s2
}
या केवल
val listener : (String?) -> String = { s ->
val s2 = s?.also {
} ?: "Null"
statusText.text=s2
s2
}
ध्यान दें कि मम्बडा में return
का उपयोग करना भी गलत है।
संबंधित सवाल
नए सवाल
kotlin
कोटलिन एक ओपन-सोर्स है, जो जेटब्रेन द्वारा समर्थित और विकसित की गई स्टेटिकली टाइप्ड प्रोग्रामिंग लैंग्वेज है। कोटलिन OOP और कार्यात्मक सुविधाओं को जोड़ती है और इंटरऑपरेबिलिटी, सुरक्षा, स्पष्टता और टूलींग समर्थन पर केंद्रित है। यह वर्तमान में जेवीएम, जावास्क्रिप्ट और देशी लक्ष्यों को लक्षित करता है, और यह एंड्रॉइड पर आधिकारिक रूप से समर्थित भाषा है।