Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

تعديل المصفوفات

جزء من قسم الأساسيات في رحلة Swift على Coddy — الدرس 64 من 86.

تصبح المصفوفات مفيدة حقًا عندما يمكنك تغيير محتوياتها. لتعديل مصفوفة، يجب عليك التصريح عنها باستخدام var بدلاً من let.

يمكنك تغيير عنصر موجود عن طريق تعيين قيمة جديدة لفهرس محدد:

var colors = ["Red", "Green", "Blue"]
colors[1] = "Yellow"
print(colors)  // ["Red", "Yellow", "Blue"]

لإضافة عناصر جديدة، استخدم الطريقة append لعنصر واحد، أو المعامل += لإضافة عدة عناصر في وقت واحد:

var numbers = [1, 2, 3]
numbers.append(4)
print(numbers)  // [1, 2, 3, 4]

numbers += [5, 6]
print(numbers)  // [1, 2, 3, 4, 5, 6]

لإدراج عنصر في موضع محدد، استخدم الأسلوب insert:

var fruits = ["Apple", "Orange"]
fruits.insert("Banana", at: 1)
print(fruits)  // ["Apple", "Banana", "Orange"]

لإزالة العناصر، استخدم remove(at:) مع الفهرس الذي تريد حذفه:

var items = ["A", "B", "C", "D"]
items.remove(at: 2)
print(items)  // ["A", "B", "D"]

تذكر، عندما تقوم بإزالة عنصر، فإن جميع العناصر اللاحقة تنتقل لأسفل لملء الفجوة.

challenge icon

التحدي

سهل

اكتب دالة باسم modifyInventory تأخذ مصفوفة من العناصر، وعنصراً جديداً لإضافته، وفهرساً لإزالته، ثم تعيد المصفوفة المعدلة.

قم بإجراء العمليات التالية بالترتيب:

  1. قم بتغيير العنصر الأول إلى "Updated"
  2. أضف العنصر الجديد إلى نهاية المصفوفة
  3. قم بإزالة العنصر الموجود في الفهرس المحدد

المعاملات:

  • items ([String]): المصفوفة الأولية للعناصر
  • newItem (String): العنصر المراد إضافته
  • removeIndex (Int): فهرس العنصر المراد إزالته (بعد الإضافة)

المخرجات: المصفوفة المعدلة بعد جميع العمليات ([String])

مثال: إذا كانت items هي ["A", "B", "C"]، و newItem هو "D"، و removeIndex هو 2، يجب على الدالة:

  1. تغيير العنصر الأول: ["Updated", "B", "C"]
  2. إضافة "D": ["Updated", "B", "C", "D"]
  3. الإزالة عند الفهرس 2: ["Updated", "B", "D"]

جرّب بنفسك

func modifyInventory(items: [String], newItem: String, removeIndex: Int) -> [String] {
    // اكتب الكود هنا
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات