مكافئ 'if let' في Swift في Kotlin: كيفية فك Optional بأمان؟
مرحبًا أيها الزملاء! لقد انتقلت مؤخرًا من Swift إلى Kotlin ولا أستطيع العثور على مكافئ مباشر لبناء `if let`. في Swift، كنت أكتب غالبًا:
```swift
if let unwrappedValue = optionalValue {
print("القيمة موجودة: \(unwrappedValue)")
} else {
print("القيمة غير موجودة")
}
```
هذا يسمح بفك Optional بأمان واستخدام القيمة داخل الكتلة. في Kotlin، كما فهمت، بدلاً من Optionals تُستخدم الأنواع القابلة للصفر (nullable-типы) مع علامة استفهام (مثل `String?`). لكنني لا أستطيع فهم كيفية التحقق بشكل أنيق وآمن من أن القيمة ليست null، وتعيينها فورًا لمتغير جديد غير قابل للتغيير. جربت استخدام `?.let`، لكنه ليس تمامًا ما أريد:
```kotlin
val optionalValue: String? = "Hello"
optionalValue?.let { unwrappedValue ->
println("القيمة موجودة: $unwrappedValue")
}
```
المشكلة هي أن `let` لا يسمح بمعالجة فرع else بسهولة (عندما تكون القيمة null). يمكن بالطبع استخدام `if (optionalValue != null)`، ولكن بعد ذلك داخ...