Pair وTriple
جزء من قسم الأساسيات في رحلة Kotlin على Coddy. الدرس 71 من 93.
أحيانًا تحتاج إلى تجميع قيمتين أو ثلاث قيم مرتبطة معًا دون إنشاء قائمة كاملة. توفّر Kotlin النوعين Pair وTriple لهذا الغرض تحديدًا.
يحتوي Pair على قيمتين بالضبط. أنشئ واحدًا باستخدام المُنشئ Pair() أو الكلمة المفتاحية to:
val coordinates = Pair(10, 20)
val person = "Alice" to 25 // نفس Pair("Alice", 25)يمكنك الوصول إلى القيم باستخدام first وsecond:
val point = Pair(5, 8)
println(point.first) // 5
println(point.second) // 8يعمل Triple بطريقة مشابهة، لكنه يحتوي على ثلاث قيم يمكن الوصول إليها باستخدام first وsecond وthird:
val rgb = Triple(255, 128, 0)
println(rgb.first) // 255
println(rgb.second) // 128
println(rgb.third) // 0تكون هذه مفيدة عندما تحتاج الدالة إلى إرجاع قيم متعددة، أو عندما تريد تجميع بيانات مترابطة دون تعريف فئة مخصّصة. يمكن أن تكون القيم من أنواع مختلفة، مما يجعلها مرنة لمواقف متنوعة.
التحدي
متوسطاكتب دالة getMinMax تأخذ قائمة من الأعداد الصحيحة وتُرجع Pair تحتوي على القيمتين الدنيا والعليا، ثم تنسّقهما في صورة سلسلة نصية.
أنشئ Pair حيث تحتوي first على القيمة الدنيا وتحتوي second على القيمة العليا من القائمة. ثم أرجِع سلسلة نصية منسّقة باستخدام خصائص الزوج.
المعاملات:
numbers(List<Int>): قائمة من الأعداد الصحيحة تحتوي على عنصر واحد على الأقل
القيمة المُرجعة: سلسلة نصية بالتنسيق "Min: X, Max: Y"، حيث إن X هي القيمة الدنيا (first) وY هي القيمة العليا (second) من Pair.
قيود الإدخال: قائمة الإدخال غير فارغة.
جرّب بنفسك
fun getMinMax(numbers: List<Int>): String {
// اكتب الكود هنا
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4العوامل - الجزء الأول
العوامل الحسابيةعامل باقي القسمةالإسناد المُعزَّزعوامل المقارنةمراجعة - الرياضيات البسيطة7أساسيات الإدخال والإخراج
دالة Printlnقوالب السلاسل النصيةإدخال ReadLineتحويل النوعمراجعة - السنوات حتى التقاعدمراجعة - صواب أم خطأ10الدوال
تعريف دالةالمعاملات والوسائطالقيم المُعادةالوسائط المُسمّاةالقيم الافتراضيةالدوال ذات التعبير الواحدمراجعة - دالة سيغمامراجعة - دالة التحقق2المتغيرات
val مقابل varاستنتاج النوعالأعدادالسلسلة النصيةالقيمة المنطقيةاصطلاحات التسميةمراجعة - تهيئة المتغيرات5المعاملات الجزء 2
المعاملات المنطقية الجزء 1المعاملات المنطقية الجزء 2المعاملات المنطقية الجزء 3المعامل الثلاثي مع تعبير Ifمراجعة - المنطق البسيط8حاسبة تقسيم الفاتورة
رسالة ترحيبيةالحصول على الإدخال3القابلية للقيمة الفارغة
ما هو الأمان من القيم الفارغةالأنواع القابلة للقيمة الفارغةعامل الاستدعاء الآمنعامل Elvisأساسيات تحدي الدوالتأكيد عدم كون القيمة فارغةمراجعة - الوصول الآمن9الحلقات
حلقة Forحلقة Whileحلقة Do-WhileBreakContinueالنطاقات في الحلقاتالحلقة المتداخلةمراجعة - المضروبمراجعة - الإدخال الديناميكي12أساسيات القوائم
List مقابل MutableListالوصول إلى العناصرتعديل القوائمأساليب القوائمPair وTripleمراجعة - قائمة المنتجاتمراجعة - القائمة المعكوسةتدرّب بنفسك: Playground لـ Kotlin