0Pricing
Scala for Backend Engineering & Functional Programming · درس

أساسيات String

أنشئ السلاسل النصية وادمجها

أساسيات String درس مجاني في Scala for Backend Engineering & Functional Programming على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Scala for Backend Engineering & Functional Programming، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Scala for Backend Engineering & Functional Programming 4 دروس في المجموع.

ما هي السلسلة النصية؟

‏String في Scala هي سلسلة من المحارف، مثل النص الذي تقرؤه أو تكتبه.

تكتب السلسلة النصية الحرفية بإحاطة النص بعلامتي اقتباس مزدوجتين. وتُعد السلاسل النصية من أكثر الأنواع استخدامًا في الشيفرة الخلفية.

val greeting = "Hello, Scala!"
println(greeting)

تعريف قيم String

استخدم val للسلسلة النصية التي لا تتغير أبدًا، وvar إذا احتجت إلى إعادة إسناد قيمتها.

تستنتج Scala النوع String تلقائيًا، لكن يمكنك كتابته صراحةً أيضًا.

val name: String = "Ada"
var mood = "happy"
mood = "excited"
println(name)
println(mood)

تحية قابلة للتشغيل

لنضع سلسلة نصية داخل برنامج كامل. يشغّل object الذي يمدّ App الشيفرة الموجودة في جسمه.

يطبع هذا رسالة ودية في وحدة التحكم.

object Main extends App {
  val message = "Welcome to Scala strings!"
  println(message)
}

السلاسل النصية غير قابلة للتغيير

إن String في Scala غير قابلة للتغيير؛ فبمجرد إنشائها، لا تتغير محارفها أبدًا.

الأساليب التي تبدو وكأنها تعدّل السلسلة النصية تعيد في الواقع سلسلة جديدة تمامًا، وتترك الأصلية دون تغيير.

val s = "abc"
val upper = s.toUpperCase
println(s)
println(upper)

طول السلسلة النصية

يخبرك الأسلوب length بعدد المحارف التي تحتوي عليها السلسلة النصية.

تُحتسب المسافات وعلامات الترقيم أيضًا، لأنها محارف.

val word = "backend"
println(word.length)
val phrase = "a b"
println(phrase.length)

ضم السلاسل النصية باستخدام +

يمكنك ضم السلاسل النصية، أو تسلسلها، باستخدام العامل +.

يفيد ذلك في إنشاء رسائل من عدة أجزاء.

val first = "Func"
val second = "tional"
val result = first + second
println(result)

خلط السلاسل النصية والأرقام

عند استخدام + بين سلسلة نصية ورقم، تحوّل Scala الرقم إلى نص وتضمه إلى السلسلة.

يسهّل ذلك إنشاء مخرجات واضحة للقراءة.

val count = 3
val line = "You have " + count + " tasks"
println(line)

الوصول إلى محرف

تبدأ فهرسة السلاسل النصية من 0. استخدم الأقواس مع فهرس للحصول على Char واحد.

يوجد المحرف الأول في الفهرس 0، والثاني في الفهرس 1، وهكذا.

val s = "Scala"
println(s(0))
println(s(1))
println(s(4))

مقارنة السلاسل النصية

استخدم == للتحقق مما إذا كانت سلسلتان نصيتان تحتويان على المحارف نفسها. في Scala، يقارن هذا القيم لا عناوين الذاكرة.

المقارنة حساسة لحالة الأحرف، لذا فإن "Hi" لا تساوي "hi".

println("hello" == "hello")
println("Hi" == "hi")

السلاسل النصية الفارغة والخالية

السلسلة النصية الفارغة "" طولها 0. أما السلسلة التي تتكون من مسافات فقط فليست فارغة، لكنها خالية.

استخدم isEmpty للتحقق من كون السلسلة النصية فارغة.

val empty = ""
val spaces = "   "
println(empty.isEmpty)
println(spaces.isEmpty)
println(spaces.length)

محارف الهروب

تحتاج بعض المحارف إلى استخدام محرف هروب مع شرطة مائلة عكسية. استخدم \n لسطر جديد، و\t لجدولة، و\" لعلامة اقتباس حرفية.

يتيح لك ذلك تضمين رموز خاصة داخل سلسلة نصية عادية.

val text = "Line one\nLine two"
println(text)
val quote = "She said \"hi\""
println(quote)

تحقق سريع

اختبر فهمك لأساسيات السلاسل النصية في Scala.

مراجعة

تعلمت أن سلاسل Scala النصية هي سلاسل غير قابلة للتغيير من المحارف، وتُنشأ باستخدام علامتي اقتباس مزدوجتين.

يمكنك معرفة length الخاص بها، وضمها باستخدام +، والوصول إلى المحارف بفهرس يبدأ من 0، ومقارنتها باستخدام ==، واستخدام محارف هروب مثل \n و\".

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

هل درس «أساسيات String» مجاني؟

نعم — نص درس «أساسيات String» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Scala for Backend Engineering & Functional Programming، انتقل إلى CoddyKit PRO. تتضمن دورة Scala for Backend Engineering & Functional Programming 4 دروس في المجموع.

ماذا ستتعلم في «أساسيات String»؟

أنشئ السلاسل النصية وادمجها تتمرن على Scala for Backend Engineering & Functional Programming مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Scala for Backend Engineering & Functional Programming؟

لا تُشترط خبرة سابقة. Scala for Backend Engineering & Functional Programming على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.

كم من الوقت يستغرق درس «أساسيات String»؟

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

هل يمكنني كتابة وتشغيل أكواد في درس Scala for Backend Engineering & Functional Programming هذا؟

نعم. كل درس في Scala for Backend Engineering & Functional Programming يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

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

  1. أساسيات String
  2. مُدرِجات s وf وraw
  3. أساليب String الشائعة
  4. السلاسل متعددة الأسطر
← العودة إلى Scala for Backend Engineering & Functional Programming