المعامل الشرطي
جزء من قسم Fundamentals في رحلة Dart على Coddy — الدرس 30 من 94.
يوفر العامل الشرطي (?:) طريقة مختصرة لكتابة جمل if-else في سطر واحد:
condition ? expressionIfTrue : expressionIfFalseمثال:
void main() {
int age = 20;
String status = age >= 18 ? 'Adult' : 'Minor';
print(status);
}المخرجات: Adult
يعمل مع أنواع بيانات مختلفة ومثالي لعمليات التعيين الشرطية البسيطة.
التحدي
سهلقم بإنشاء برنامج يستخدم المعامل الشرطي (?:) لتحديد ما إذا كان اللاعب يمتلك نقاطاً كافية للارتقاء بالمستوى في لعبة ما:
- قم بالتصريح عن متغير صحيح
playerScoreبقيمة 750 - قم بالتصريح عن متغير صحيح
levelUpThresholdبقيمة 500 - استخدم المعامل الشرطي لإنشاء رسالة نصية تقول إما:
- "Level up!" إذا كانت نتيجة اللاعب أكبر من أو تساوي الحد الأدنى
- "Keep trying!" إذا كانت نتيجة اللاعب أقل من الحد الأدنى
- قم بتخزين هذه الرسالة في متغير نصي يسمى
message - اطبع نتيجة اللاعب بالتنسيق التالي:
Player score: 750 - اطبع الرسالة
- قم بتحديث نتيجة اللاعب إلى 450
- استخدم المعامل الشرطي مرة أخرى لتحديث الرسالة بناءً على النتيجة الجديدة
- اطبع نتيجة اللاعب المحدثة بالتنسيق التالي:
Player score: 450 - اطبع الرسالة المحدثة
يجب أن يتطابق مخرجك مع التنسيق المتوقع تماماً.
ورقة مرجعية
يوفر المعامل الشرطي (?:) طريقة مختصرة لكتابة جمل if-else في سطر واحد:
condition ? expressionIfTrue : expressionIfFalseمثال:
int age = 20;
String status = age >= 18 ? 'Adult' : 'Minor';إنه يعمل مع أنواع بيانات مختلفة وهو مثالي لعمليات التعيين الشرطية البسيطة.
جرّب بنفسك
void main() {
// أعلن عن متغيراتك هنا
int playerScore = _;
int levelUpThreshold = _;
// استخدم العامل الشرطي لإنشاء الرسالة الأولى
String message = playerScore >= levelUpThreshold ? _ : _;
// اطبع نتيجة اللاعب والرسالة
print("Player score: $playerScore");
print(message);
// قم بتحديث نتيجة اللاعب
playerScore = _;
// استخدم العامل الشرطي لتحديث الرسالة
message = playerScore >= levelUpThreshold ? _ : _;
// اطبع نتيجة اللاعب المحدثة والرسالة
print("Player score: $playerScore");
print(message);
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
4المعاملات - الجزء الثاني
معاملات المقارنةالمعامل المنطقي ANDالمعامل المنطقي ORالمعامل المنطقي NOTمعاملات فحص النوعملخص - إجراء المقارنات7التعامل مع النصوص (Strings)
دمج النصوص (String Concatenation)تضمين النصوص (String Interpolation)النصوص متعددة الأسطر (Multi-line Strings)خصائص النصوص (String Properties)دوال النصوص الأساسية (String Methods)10المجموعات - أساسيات الخرائط
ما هي الخرائط؟إنشاء خريطةالوصول إلى القيم عبر المفتاحأزواج المفتاح والقيمةالحصول على حجم الخريطةالحصول على المفاتيحالحصول على القيمالتحقق من وجود مفتاح2المتغيرات وأنواع البيانات الأساسية
ما هي المتغيرات؟النصوص (Strings)الأعداد الصحيحة (int)الأعداد العشرية (double)القيم المنطقية (bool)استنتاج النوع باستخدام 'var'المتغيرات النهائية (Final)المتغيرات الثابتة (Constant)قواعد التسميةأساسيات الـ Null Safetyملخص - التصريح عن المتغيرات8مسار التحكم - الحلقات التكرارية
حلقة 'for' التكراريةحلقة 'while' التكراريةحلقة 'do-while' التكراريةاستخدام 'break' في الحلقات التكراريةاستخدام 'continue' في الحلقات التكراريةملخص - تكرار الكود البرمجي3المعاملات - الجزء الأول
المعاملات الحسابيةالقسمة الصحيحةمعامل باقي القسمة (Modulo)الزيادة والنقصاناختصارات التعيينملخص - الحسابات البسيطة6تدفق التحكم - اتخاذ القرار
جملة 'if'جملة 'else'جملة 'else if'ملخص - القرارات البسيطةجمل 'if' المتداخلةجملة 'switch'9المجموعات - أساسيات القوائم
ما هي القوائم؟إنشاء قائمةالوصول عبر الفهرسالحصول على طول القائمةإضافة عناصرإزالة عناصرالتحقق مما إذا كانت القائمة فارغةالتكرار عبر القائمة