0Pricing
Kotlin Academy · درس

قوالب String: $variable و${expression}

تضمين المتغيرات والتعبيرات داخل السلاسل النصية باستخدام صياغة القوالب

قوالب String: $variable و${expression} درس مجاني في Kotlin Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Kotlin Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Kotlin Academy 4 دروس في المجموع.

ما قوالب السلاسل النصية؟

تتيح قوالب السلاسل النصية إدراج القيم مباشرةً داخل سلسلة نصية باستخدام $ للمتغيرات البسيطة و${...} للتعبيرات الكاملة.

إدراج متغير

ضعوا اسم المتغير مسبوقًا بـ $ داخل السلسلة النصية. وتستبدل Kotlin هذا الاسم بقيمته وقت التشغيل.

fun main() {
    val name = "Ada"
    println("Hello, $name!") // Hello, Ada!
}

متغيرات متعددة

أدرجوا العدد الذي تحتاجونه من المتغيرات. ويُستبدل كل $name بشكل مستقل.

fun main() {
    val first = "Marie"
    val last = "Curie"
    val year = 1903
    println("$first $last won Nobel in $year")
}

تعبيرات باستخدام ${...}

استخدموا ${expression} لأي شيء يتجاوز معرّفًا واحدًا — مثل العمليات الحسابية واستدعاءات الدوال والوصول إلى الخصائص.

fun main() {
    val a = 10
    val b = 5
    println("Sum: ${a + b}")
    println("Product: ${a * b}")
}

استدعاء الدوال داخل القوالب

يمكن للقوالب استدعاء الدوال والخصائص. وكل ما يُقيَّم إلى قيمة يعمل داخلها.

fun main() {
    val word = "kotlin"
    println("Length: ${word.length}")
    println("Upper: ${word.uppercase()}")
}

التعبيرات الشرطية

إن if في Kotlin تعبير، لذا يمكنكم إدراجه مباشرةً في قالب.

fun main() {
    val score = 75
    println("Result: ${if (score >= 60) "pass" else "fail"}")
}

تهريب علامة الدولار

إذا احتجتم إلى $ حرفية، فاهربوها باستخدام شرطة مائلة عكسية: \$.

fun main() {
    val price = 19
    println("Cost: \$$price") // Cost: $19
}

القوالب المتداخلة

يمكنكم تداخل قوالب السلاسل النصية داخل ${...}، لكن السلاسل المتداخلة بعمق تصبح صعبة القراءة.

fun main() {
    val items = listOf("apple", "banana")
    println("List: ${items.joinToString { "[$it]" }}")
}

القوالب مع المجموعات

ادمجوا القوالب مع عمليات المجموعات لتنسيق الناتج بإيجاز.

fun main() {
    val numbers = listOf(1, 2, 3, 4, 5)
    println("Sum of ${numbers.size} numbers: ${numbers.sum()}")
}

القوالب وتحويل النوع

يعمل أي نوع يملك toString() مناسبة داخل القوالب — مثل القيم المنطقية والأعداد والأصناف المخصصة.

data class Point(val x: Int, val y: Int)
fun main() {
    val p = Point(3, 4)
    println("Point: $p") // uses Point.toString()
    println("X coord: ${p.x}")
}

ملاحظة حول الأداء

يحوّل مُصرّف Kotlin قوالب السلاسل النصية إلى استدعاءات StringBuilder، على نحو مشابه للربط اليدوي — ولا يوجد عادةً فرق في الأداء. فضّلوا القوالب لتحسين قابلية القراءة.

fun main() {
    val n = 42
    val a = "Value is $n"       // template
    val b = "Value is " + n      // concatenation
    println(a == b) // true
}

تحقّق سريع

ما صيغة القالب التي تُدرج نتيجة x + 1 بشكل صحيح؟

مراجعة

استخدموا $variable للمعرّفات البسيطة و${expression} لأي شيء أكثر تعقيدًا. اهربوا من علامات الدولار الحرفية باستخدام \$. تُترجم القوالب إلى شيفرة StringBuilder فعّالة.

الأسئلة الشائعة

هل درس «قوالب String: $variable و${expression}» مجاني؟

نعم — نص درس «قوالب String: $variable و${expression}» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Kotlin Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Kotlin Academy 4 دروس في المجموع.

ماذا ستتعلم في «قوالب String: $variable و${expression}»؟

تضمين المتغيرات والتعبيرات داخل السلاسل النصية باستخدام صياغة القوالب تتمرن على Kotlin Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Kotlin Academy؟

لا تُشترط خبرة سابقة. Kotlin Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «قوالب String: $variable و${expression}»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Kotlin Academy هذا؟

نعم. كل درس في Kotlin Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. أساسيات String: القيم الحرفية وتسلسلات الهروب والطول
  2. قوالب String: $variable و${expression}
  3. السلاسل النصية الخام وعلامات الاقتباس الثلاثية
  4. أهم دوال السلاسل النصية: trim وsplit وreplace وcontains
← العودة إلى Kotlin Academy