English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا المقال، ستعلم كيفية استخدام عمودية الحالة أو العمودية الحالة لتغيير تدفق البرنامج.
عمودية الحالة "? :" هيجملة if-elseالتنسيق القصير.
نص عمودية الحالة هو:
condition ? value1 : value2
وهذا ما يعنيه
إذا كانت condition صحيحة، فإنها تعيد value1.
إذا كانت condition خطأ، فإنها تعيد value2.
النص المماثل باستخدام if-else هو:
if condition { value1 } value2 }
قد تتساءل لماذا نستخدم عمودية الحالة إذا كانت تقوم بمثل عمل جملة if-else. الغرض الرئيسي منها هو جعل الكود أقصر وأكثر وضوحًا.
في الحالات البسيطة، يمكنك حسابها في سطر واحد باستخدام أقل كود من if-else.
print(true && false ? "الحالة صحيحة" : "الحالة خطأ")
النص المماثل باستخدام if-else هو:
if true && false { print(الحالة صحيحة) } print(الحالة خطأ) }
عند تشغيل البرنامج أعلاه، الناتج سيكون:
الحالة خطأ
في البرنامج أعلاه، نتائج التعبير true && false هو خطأ، لذا يعيد الجملة. الحالة خطأ ويُطبع جملة print في الشاشة.
إذا تم تغيير العبارة إلى true || false، فإن الجملة تُحسب كصحيحة وتُعيد العبارة.الحالة صحيحة،يُطبع جملة print في الشاشة.
يمكن استخدام عمودية الحالة أيضًا كبدل لجملة if-else-if.
من خلال استخدام عمودية الحالة، يمكنك استبدال سطرين أو أكثر من if-else-if بسطر واحد.
لكن في بعض الأحيان، قد لا يكون هذا هو الحل الأفضل.
if true && false { print(النتيجة هي (true && false)) } else if true || false { print(النتيجة هي (true || false)) } else if false || false { print(النتيجة هي (false || false)) } print("بند else الافتراضي") }
النص المماثل لبند عمودية الثلاثية المذكور أعلاه هو:
print(true && false ? "Result is \(true && false)" : true || false ? "Result is \(true || false)" : false || false ? "Result is \(false || false)" : "The condition is unknown")
عند تشغيل البرنامج المذكور أعلاه، ستكون هناك اثنتان من الخروج هي:
النتيجة هي الحقيقة
في البرنامج المذكور أعلاه، على الرغم من أننا نستخدم عمودية الثلاثية لتعويض بند if-else-if ببند واحد. ولكن تعبيرات عمودية الثلاثية صعبة الفهم.
لذلك، يجب استخدام عمودية الثلاثية حسب الحالة الفعلية.