ميزة Smart Casts في الكوتلن Kotlin تقوم بتلقائي تحويل نوع المتغير عند التحقق من نوعه في وقت التشغيل.
عند استخدام ميزة Smart Casts ، يتم التحقق من نوع المتغير تلقائيًا دون الحاجة إلى التحقق اليدوي باستخدام عبارة “is” أو “as”. هذا يجعل الشفرة أكثر قراءة وأكثر فعالية.
لتفعيل ميزة Smart Casts ، يجب أن يكون المتغير غير قابل للتغيير (val) وأن يكون لديه نوع محدد.
على سبيل المثال ، إذا كان لدينا متغير من نوع Any ، يمكننا التحقق من نوعه باستخدام ميزة Smart Casts على النحو التالي:
“`kotlin
val value: Any = “Hello Kotlin”
if (value is String) {
println(value.length) // Smart Casts: automatically cast value to String
}
“`
في المثال أعلاه ، يتم تحويل المتغير `value` من `Any` إلى `String` تلقائيًا عند التحقق من أن نوعه هو `String`. بالتالي ، يمكننا استخدام خاصية `length` المتاحة فقط لنوع `String`.
يمكن استخدام ميزة Smart Casts مع أنواع البيانات الأخرى مثل الكائنات المختلفة والصفوف المشتقة.