التكرار على العناصر
جزء من قسم الأساسيات في رحلة Kotlin على Coddy. الدرس 74 من 93.
الآن بعد أن عرفت كيفية إنشاء القوائم وتعديلها، حان الوقت لتعلّم كيفية معالجة كل عنصر على حدة. يُسمّى هذا التكرار، وهو أحد أكثر العمليات شيوعًا التي ستجريها باستخدام القوائم.
توفر حلقة for طريقة واضحة للتكرار على كل عنصر في قائمة:
val fruits = listOf("Apple", "Banana", "Cherry")
for (fruit in fruits) {
println(fruit)
}
// المخرجات:
// Apple
// Banana
// Cherryداخل الحلقة، يأخذ المتغير fruit كل قيمة من القائمة بالترتيب. يمكنك تسمية هذا المتغير بأي اسم يناسب بياناتك. تتوقف الحلقة تلقائيًا بعد معالجة العنصر الأخير.
يعمل هذا النمط بشكل رائع عندما تحتاج إلى تنفيذ إجراء على كل عنصر، مثل حساب الإجمالي:
val prices = listOf(10, 25, 15)
var total = 0
for (price in prices) {
total += price
}
println(total) // 50تعمل البنية النحوية نفسها مع أي نوع من القوائم، سواء كانت تحتوي على سلاسل نصية أو أرقام أو قيم أخرى.
التحدي
متوسطاكتب دالة countPositives تأخذ قائمة من الأعداد الصحيحة وتُرجع عدد الأعداد الموجبة.
كرّر على كل عنصر في القائمة واحسب عدد الأعداد الأكبر من الصفر.
المعلمات:
numbers(List<Int>): قائمة من الأعداد الصحيحة (يمكن أن تتضمن قيمًا موجبة وسالبة وقيمًا تساوي الصفر)
القيمة المُرجعة: العدد الإجمالي للأعداد الموجبة في القائمة (Int)
جرّب بنفسك
fun countPositives(numbers: List<Int>): Int {
// اكتب الكود هنا
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4العوامل - الجزء الأول
العوامل الحسابيةعامل باقي القسمةالإسناد المُعزَّزعوامل المقارنةمراجعة - الرياضيات البسيطة7أساسيات الإدخال والإخراج
دالة Printlnقوالب السلاسل النصيةإدخال ReadLineتحويل النوعمراجعة - السنوات حتى التقاعدمراجعة - صواب أم خطأ10الدوال
تعريف دالةالمعاملات والوسائطالقيم المُعادةالوسائط المُسمّاةالقيم الافتراضيةالدوال ذات التعبير الواحدمراجعة - دالة سيغمامراجعة - دالة التحقق13التكرار على التسلسلات
التكرار على العناصرطريقة WithIndexالتكرار على السلاسل النصية - الجزء 1التكرار على السلاسل النصية - الجزء 2مراجعة - الأحرف المفهرسة2المتغيرات
val مقابل varاستنتاج النوعالأعدادالسلسلة النصيةالقيمة المنطقيةاصطلاحات التسميةمراجعة - تهيئة المتغيرات5المعاملات الجزء 2
المعاملات المنطقية الجزء 1المعاملات المنطقية الجزء 2المعاملات المنطقية الجزء 3المعامل الثلاثي مع تعبير Ifمراجعة - المنطق البسيط8حاسبة تقسيم الفاتورة
رسالة ترحيبيةالحصول على الإدخال3القابلية للقيمة الفارغة
ما هو الأمان من القيم الفارغةالأنواع القابلة للقيمة الفارغةعامل الاستدعاء الآمنعامل Elvisأساسيات تحدي الدوالتأكيد عدم كون القيمة فارغةمراجعة - الوصول الآمن9الحلقات
حلقة Forحلقة Whileحلقة Do-WhileBreakContinueالنطاقات في الحلقاتالحلقة المتداخلةمراجعة - المضروبمراجعة - الإدخال الديناميكيتدرّب بنفسك: Playground لـ Kotlin