Avatar ·

Kotlin में `::` ऑपरेटर का क्या अर्थ है? उदाहरणों के साथ समझाएं

सभी को नमस्कार! मैंने अभी Android डेवलपमेंट के लिए Kotlin सीखना शुरू किया है और दो कोलन `::` वाले अजीब सिंटैक्स पर ठोकर खाई हूं। मैं इसे हर जगह देखता हूं: lambdas में, reflection के साथ काम करते समय, Jetpack Compose में। उदाहरण के लिए, मैंने ऐसा कोड देखा: ```kotlin val onClick: (View) -> Unit = ::handleClick ``` या यह: ```kotlin class MyFragment : Fragment() { private val binding by viewModels() // ... val items = listOf("A", "B", "C") val filtered = items.filter(String::isNotEmpty) } ``` और Compose में भी: ```kotlin Button(onClick = ::onButtonClick) { Text("Click") } ``` मैं समझता हूं कि यह किसी तरह functions या properties के references से संबंधित है, लेकिन मैं `::handleClick` और सिर्फ `{ handleClick(it) }` के बीच अंतर नहीं समझ पा रहा हूं। इस ऑपरेटर की क्या आवश्यकता है? इसका उपयोग कब करें, और कब न करें?

अभी तक कोई उत्तर नहीं।

लॉग इन करें उत्तर देने के लिए

ब्लॉग