حدد بيان الحالة في VB.Net مع الأمثلة
⚡ ملخص ذكي
تُعدّ عبارة Select Case في VB.Net عبارة شرطية تختبر تعبيرًا واحدًا مقابل قائمة من القيم وتُشغّل الكتلة المطابقة، مما يُعطي تفرعًا أنظف وأكثر قابلية للقراءة من سلاسل If Then ElseIf الطويلة.
ما هو تحديد الحالة في VB.Net؟
حدد الحالة عبارة عن عبارة شرطية تساعدك على اختبار متغير للمساواة مقابل مجموعة من القيم. تتم الإشارة إلى كل قيمة كحالة، ويجب التحقق من المتغير الذي يتم تشغيله لجميع الحالات المحددة.
توفر لك عبارة Select Case طريقة سهلة لاختبار محتويات المتغير. ومع ذلك، فهو مناسب فقط للاستخدام عندما يكون للمتغير المعني عدد محدود من الخيارات.
بناء جملة بيان الحالة المحدد في VB.Net
يتم تعريف عبارة Select Case في VB.Net باستخدام الصيغة التالية:
Select [ Case ] your_expression [ Case expression_list [ statement(s) ] ] [ Case Else [ else statement(s) ] ] End Select
دعونا نصف المعلمات المستخدمة في بناء الجملة:
- your_expression: يشير هذا إلى تعبير يتم تقييمه إلى أحد العناصر الأولية أنواع البيانات مدعوم في Microsoft VB.Net.
- Expression_list: عبارات التعبير التي تشير إلى قيم المطابقة للتعبير. في حالة الجمل المتعددة، افصل بينها باستخدام الفاصلة (،).
- صياغات): العبارات التي تتبع الحالة ويتم تنفيذها بعد أن يطابق تعبير التحديد أي جملة في Expression_list.
- تصريحات أخرى: العبارات التي تتبع حالة أخرى ويتم تشغيلها بمجرد فشل تعبير التحديد في مطابقة أي من الجمل الموجودة في Expression_list لأي عبارة حالة.
VB.Net حدد أمثلة على برنامج بيان الحالة
لنستخدم مثالاً لتوضيح كيفية استخدام عبارة Select Case في VB.Net:
الخطوة 1) أولاً، قم بإنشاء تطبيق وحدة تحكم جديد.
الخطوة 2) استخدم الكود التالي:
Module Module1 Sub Main() Dim name As String name = "Guru99" Select Case name Case "John" Console.WriteLine("Hello John") Case "Guru99" Console.WriteLine("Hello Guru99") Case "Alice" Console.WriteLine("Hello Alice") Case "Joel" Console.WriteLine("Hello Joel") Case Else Console.WriteLine("unknown name") End Select Console.WriteLine("VB.NET is easy!") Console.ReadKey() End Sub End Module
الخطوة 3) انقر على زر البدء من الشريط العلوي لتشغيل البرنامج، وسيعطيك النتيجة التالية:
فيما يلي لقطة شاشة للكود الذي استخدمناه:
شرح Code:
- إنشاء وحدة تسمى Module1.
- بداية الإجراء الفرعي الرئيسي.
- إنشاء متغير سلسلة اسمه name.
- تحديد قيمة لـ Guru99 إلى اسم المتغير.
- سيتم استخدام قيمة اسم المتغير لإجراء مقارنات مع عبارات الحالة المختلفة للعثور على التطابق.
- إذا كانت قيمة اسم المتغير هي John.
- النص المطلوب طباعته على وحدة التحكم إذا كانت الحالة المذكورة أعلاه صحيحة/متطابقة.
- إذا كانت قيمة اسم المتغير هي Guru99.
- النص المطلوب طباعته على وحدة التحكم إذا كانت الحالة المذكورة أعلاه صحيحة/متطابقة.
- إذا كانت قيمة اسم المتغير هي Alice.
- النص المطلوب طباعته على وحدة التحكم إذا كانت الحالة المذكورة أعلاه صحيحة/متطابقة.
- إذا كانت قيمة اسم المتغير هي Joel.
- النص المطلوب طباعته على وحدة التحكم إذا كانت الحالة المذكورة أعلاه صحيحة/متطابقة.
- إذا لم تكن أي من عبارات الحالة المذكورة أعلاه صحيحة/متطابقة.
- النص المطلوب طباعته على وحدة التحكم إذا كانت الحالة المذكورة أعلاه صحيحة، أي أنه لا توجد عبارة حالة متطابقة.
- نهاية عبارة التحديد.
- سيقوم هذا البيان بطباعة بعض النص على الشاشة بغض النظر عما إذا كان بيان الحالة مطابقًا أم لا. سيتم تنفيذه دائمًا.
- قم بإيقاف نافذة وحدة التحكم مؤقتًا لفترة من الوقت في انتظار أن يتخذ المستخدم إجراءً لإغلاقها.
- نهاية الإجراء الفرعي الرئيسي.
- نهاية الوحدة.
مثال 2
يمكنك أيضًا السماح للمستخدم بكتابة الاسم، ثم اتخاذ قرارك بناءً على هذا الإدخال.
الخطوة 1) إنشاء تطبيق وحدة تحكم جديد.
الخطوة 2) استخدم الكود التالي:
Module Module1 Sub Main() Console.Write("Enter your name: ") Dim name As String = Console.ReadLine() Select Case name Case "John" Console.WriteLine("Hello John") Case "Guru99" Console.WriteLine("Hello Guru99") Case "Alice" Console.WriteLine("Hello Alice") Case "Joel" Console.WriteLine("Hello Joel") Case Else Console.WriteLine("unknown name") End Select Console.WriteLine("VB.NET is easy!") Console.ReadKey() End Sub End Module
الخطوة 3) انقر فوق زر البدء من الشريط العلوي لتنفيذه. يجب أن يؤدي ذلك إلى إرجاع ما يلي:
الخطوة 4) اكتب الاسم Guruأدخل الرقم 99 واضغط على مفتاح الإدخال. ستظهر لك النتيجة التالية:
فيما يلي لقطة شاشة للكود:
شرح Code:
- إنشاء وحدة تسمى Module1.
- بداية الإجراء الفرعي الرئيسي.
- طباعة بعض النصوص على وحدة التحكم لإرشاد المستخدم إلى إدخال اسمه.
- إنشاء متغير سلسلة باسم name ومطالبة المستخدم بإدخال قيمة لهذا المتغير على وحدة التحكم.
- سيتم استخدام قيمة اسم المتغير لإجراء مقارنات مع عبارات الحالة المختلفة للعثور على التطابق.
- إذا كانت قيمة اسم المتغير هي John.
- النص المطلوب طباعته على وحدة التحكم إذا كانت الحالة المذكورة أعلاه صحيحة/متطابقة.
- إذا كانت قيمة اسم المتغير هي Guru99.
- النص المطلوب طباعته على وحدة التحكم إذا كانت الحالة المذكورة أعلاه صحيحة/متطابقة.
- إذا كانت قيمة اسم المتغير هي Alice.
- النص المطلوب طباعته على وحدة التحكم إذا كانت الحالة المذكورة أعلاه صحيحة/متطابقة.
- إذا كانت قيمة اسم المتغير هي Joel.
- النص المطلوب طباعته على وحدة التحكم إذا كانت الحالة المذكورة أعلاه صحيحة/متطابقة.
- إذا لم تكن أي من عبارات الحالة المذكورة أعلاه صحيحة/متطابقة.
- النص المطلوب طباعته على وحدة التحكم إذا كانت الحالة المذكورة أعلاه صحيحة، أي أنه لا توجد عبارة حالة متطابقة.
- نهاية عبارة التحديد.
- سيقوم هذا البيان بطباعة بعض النص على الشاشة بغض النظر عما إذا كان بيان الحالة مطابقًا أم لا. سيتم تنفيذه دائمًا.
- قم بإيقاف نافذة وحدة التحكم مؤقتًا لفترة من الوقت في انتظار أن يتخذ المستخدم إجراءً لإغلاقها.
- نهاية الإجراء الفرعي الرئيسي.
- نهاية الوحدة.
وظائف ToLower() وToUpper() في VB.Net
تُعتبر عبارة Select Case حساسة لحالة الأحرف. وهذا يعني أنها ستتعامل مع guru99 على أنها مختلفة عن Guru99. ومع ذلك، يمكننا استخدام الدالتين ToLower() و ToUpper() لمعالجة مشكلة حالة مع هذه العبارة.
مثال على ToLower() وToUpper() في VB.Net
فيما يلي مثال على دالتي ToLower() و ToUpper() في VB.Net:
الخطوة 1) إنشاء تطبيق وحدة تحكم جديد.
الخطوة 2) استخدم الكود التالي:
Module Module1 Sub Main() Console.Write("Enter your name: ") Dim name As String = Console.ReadLine() Select Case name.ToLower() Case "john." Console.WriteLine("Hello John") Case "guru99." Console.WriteLine("Hello Guru99") Case "alice." Console.WriteLine("Hello Alice") Case "joel." Console.WriteLine("Hello Joel") Case Else Console.WriteLine("unknown name") End Select Console.WriteLine("VB.NET is easy!") Console.ReadKey() End Sub End Module
الخطوة 3) انقر فوق زر البدء في الشريط العلوي لتشغيل الكود. يجب أن تحصل على النتيجة التالية:
الخطوة 4) اكتب الاسم Guruاكتب 99 (حرف G كبير) ثم اضغط على مفتاح الإدخال (Enter) في لوحة المفاتيح. ستظهر لك النتيجة التالية:
فيما يلي لقطة شاشة للكود:
شرح Code:
Code السطر 5: سيتم استخدام قيمة اسم المتغير لإجراء مقارنات مع عبارات Case المختلفة للعثور على تطابق. ستضمن الدالة ToLower() تحويل أي اسم يكتبه المستخدم إلى أحرف صغيرة قبل تقييم عبارات Case. هذا يعني أنه إذا كتب المستخدم Guruإذا كتب المستخدم 99، فسيتم تحويله فورًا إلى guru99، ثم يتم تقييم عبارات الحالة. أما إذا كتب John، فسيتم تحويله فورًا إلى john قبل تقييم عبارات الحالة.
بقية الكود نفس ما ورد أعلاه.








