Avatar ·

Kotlin में run, let, apply, also और with के उपयोग के उदाहरण: कब क्या लगाएं?

नमस्ते साथियों! मैंने Kotlin सीखना शुरू किया है और run, let, apply, also और with जैसे extension functions को समझ नहीं पा रहा हूँ। दस्तावेज़ में लिखा है कि ये साफ़ कोड लिखने में मदद करते हैं, लेकिन मैं हमेशा भ्रमित हो जाता हूँ कि किसे चुनूँ। उदाहरण के लिए, मेरे पास एक सरल User class है: ```kotlin data class User(var name: String, var age: Int, var email: String) ``` और मैं एक instance बनाना चाहता हूँ, उसके fields बदलना चाहता हूँ, और फिर log में प्रिंट करना चाहता हूँ। मैंने अलग-अलग तरीके आज़माए: ```kotlin // तरीका 1 val user = User("", 0, "") user.name = "Иван" user.age = 25 user.email = "ivan@mail.ru" println(user) // तरीका 2 val user = User("", 0, "").apply { name = "Иван" age = 25 email = "ivan@mail.ru" } println(user) ``` apply काम करता है, लेकिन जब मुझे transformation का result वापस चाहिए, तो मैं भ्रमित हो जाता हूँ। उदाहरण के लिए, अगर मैं बदलाव के बाद name की length प्राप्त करना चाहता हूँ: ```kotlin val length = User("", 0, "").let { it.name = "Иван" it.name.length } ``` या फिर ये भी: