عوامل التسلسلات
جزء من قسم الأساسيات في رحلة Kotlin على Coddy. الدرس 81 من 93.
توفر Kotlin معامل + لدمج القوائم، مما يجعل من السهل دمج المجموعات معًا. يعمل هذا بطريقة مشابهة لضم السلاسل النصية.
لضم قائمتين في قائمة واحدة، ما عليك سوى استخدام العامل +:
val first = listOf(1, 2, 3)
val second = listOf(4, 5, 6)
val combined = first + second
println(combined) // [1, 2, 3, 4, 5, 6]يمكنك أيضًا إضافة عنصر واحد إلى قائمة باستخدام العامل نفسه:
val colors = listOf("Red", "Green")
val moreColors = colors + "Blue"
println(moreColors) // [Red, Green, Blue]يزيل العامل - العناصر من قائمة. وينشئ قائمة جديدة من دون العنصر المحدد:
val numbers = listOf(1, 2, 3, 2, 4)
val result = numbers - 2
println(result) // [1, 3, 2, 4]لاحظ أن التكرار الأول للعنصر فقط هو الذي تتم إزالته. لإزالة جميع العناصر المطابقة، ستطرح قائمةً بدلاً من ذلك:
val numbers = listOf(1, 2, 3, 2, 4)
val result = numbers - listOf(2)
println(result) // [1, 3, 4]تُرجع هذه العوامل دائمًا قائمة جديدة: تظل القوائم الأصلية دون تغيير. وهذا يجعل استخدامها آمنًا دون القلق بشأن تعديل بياناتك عن طريق الخطأ.
التحدي
متوسطستتلقى قائمتين من الأعداد الصحيحة وعددًا صحيحًا واحدًا لإزالته. ادمج القائمتين باستخدام العامل +، ثم أزل جميع تكرارات العدد الصحيح المحدد باستخدام العامل - مع قائمة.
اطبع القائمة الناتجة.
تنسيق الإدخال:
- السطر الأول: عدد صحيح
nيمثل عدد العناصر في القائمة الأولى - الأسطر
nالتالية: أعداد صحيحة للقائمة الأولى - السطر التالي: عدد صحيح
mيمثل عدد العناصر في القائمة الثانية - الأسطر
mالتالية: أعداد صحيحة للقائمة الثانية - السطر الأخير: العدد الصحيح المراد إزالته من القائمة المدمجة
تنسيق الإخراج:
اطبع القائمة الناتجة بالتنسيق الافتراضي للقوائم في Kotlin.
مثال:
إذا كانت القائمة الأولى هي [1, 2, 3]، والقائمة الثانية هي [2, 4, 2]، والعدد المراد إزالته هو 2، فستكون القائمة المدمجة [1, 2, 3, 2, 4, 2]. بعد إزالة جميع تكرارات 2، يجب أن يكون الناتج:
[1, 3, 4]جرّب بنفسك
fun main() {
// اقرأ القائمة الأولى
val n = readLine()!!.toInt()
val list1 = mutableListOf<Int>()
repeat(n) {
list1.add(readLine()!!.toInt())
}
// اقرأ القائمة الثانية
val m = readLine()!!.toInt()
val list2 = mutableListOf<Int>()
repeat(m) {
list2.add(readLine()!!.toInt())
}
// اقرأ العدد الصحيح المراد إزالته
val toRemove = readLine()!!.toInt()
// TODO: اكتب الكود الخاص بك هنا
// ادمج القائمتين باستخدام عامل +
// أزل جميع تكرارات toRemove باستخدام عامل - مع قائمة
// اطبع القائمة الناتجة
println(result)
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4العوامل - الجزء الأول
العوامل الحسابيةعامل باقي القسمةالإسناد المُعزَّزعوامل المقارنةمراجعة - الرياضيات البسيطة7أساسيات الإدخال والإخراج
دالة Printlnقوالب السلاسل النصيةإدخال ReadLineتحويل النوعمراجعة - السنوات حتى التقاعدمراجعة - صواب أم خطأ10الدوال
تعريف دالةالمعاملات والوسائطالقيم المُعادةالوسائط المُسمّاةالقيم الافتراضيةالدوال ذات التعبير الواحدمراجعة - دالة سيغمامراجعة - دالة التحقق2المتغيرات
val مقابل varاستنتاج النوعالأعدادالسلسلة النصيةالقيمة المنطقيةاصطلاحات التسميةمراجعة - تهيئة المتغيرات5المعاملات الجزء 2
المعاملات المنطقية الجزء 1المعاملات المنطقية الجزء 2المعاملات المنطقية الجزء 3المعامل الثلاثي مع تعبير Ifمراجعة - المنطق البسيط8حاسبة تقسيم الفاتورة
رسالة ترحيبيةالحصول على الإدخال14القوائم المتقدمة
تقسيم القوائم باستخدام SubListتقسيم القوائم باستخدام Take وDropعوامل التسلسلاتطريقة Containsمراجعة - البحث في صفحة3القابلية للقيمة الفارغة
ما هو الأمان من القيم الفارغةالأنواع القابلة للقيمة الفارغةعامل الاستدعاء الآمنعامل Elvisأساسيات تحدي الدوالتأكيد عدم كون القيمة فارغةمراجعة - الوصول الآمن9الحلقات
حلقة Forحلقة Whileحلقة Do-WhileBreakContinueالنطاقات في الحلقاتالحلقة المتداخلةمراجعة - المضروبمراجعة - الإدخال الديناميكيتدرّب بنفسك: Playground لـ Kotlin