Avatar ·

Kotlin में Swift 'if let' का समतुल्य: Optional को सुरक्षित रूप से अनपैक कैसे करें?

नमस्ते सहयोगियों! मैं हाल ही में Swift से Kotlin पर आया हूँ और मुझे `if let` कंस्ट्रक्शन का सीधा समतुल्य नहीं मिल रहा है। Swift में मैं अक्सर ऐसा लिखता था: ```swift if let unwrappedValue = optionalValue { print("मान मौजूद है: \(unwrappedValue)") } else { print("मान मौजूद नहीं है") } ``` यह Optional को सुरक्षित रूप से अनपैक करने और ब्लॉक के अंदर मान का उपयोग करने की अनुमति देता था। Kotlin में, जैसा कि मैंने समझा, Optionals के बजाय nullable-प्रकार का उपयोग प्रश्न चिह्न के साथ किया जाता है (जैसे, `String?`). लेकिन मैं यह नहीं समझ पा रहा हूँ कि कैसे खूबसूरती से और सुरक्षित रूप से जाँच करूँ कि मान null नहीं है, और तुरंत इसे एक नए immutable वेरिएबल में असाइन करूँ। मैंने `?.let` का उपयोग करने की कोशिश की, लेकिन यह बिल्कुल वैसा नहीं है जैसा मैं चाहता हूँ: ```kotlin val optionalValue: String? = "Hello" optionalValue?.let { unwrappedValue -> println("मान मौजूद है: $unwrappedValue") } ``` समस्या यह है कि `let` else-शाखा (जब मान null हो) को आसानी से संभालने की अनुमति नहीं देता है। बेशक, कोई `if (optionalValue != null)` का उपयोग कर सकता है, लेकिन फिर अंदर