تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
Ternary operator in C#.NET
#3
مقال جميل جداً شكراً لك اخى Sajad
واحببت ان اقوم باضافة رداً بتلك المعلومات
فاتمنا تقبل منى هذه الاضافة 

فى البداية ساجعل المقالة تخص الـ C# وكذلك الـ VB.Net

بخصوص طريقة التعامل مع IF و ELSE الطريقة المذكورة هنا
تذكرني دائماً بلغة PHP وكيف كانت لها مميزات كثيرة كاستفادة من هذا الامر

على اى حال ادخل فى مضمون الشرح 

فى الـ C#
الكتابة الاعتيادية لـ IF و Else هي
كود :
           int ii = 0;
           if (ii == 0)
           {
               // Run Code True;
           }
           else
           {
               // Run Code False;
           }

فى الـ VB.NET
الكتابة الاعتيادية لـ IF و Else هي
كود :
       Dim ii As Integer = 0
       If ii = 0 Then
           ' Run Code True
       Else
           ' Run Code False
       End If

فى الـ C# 
عند التعامل مع IF و Else من خلال ? : يكون الكود بهذا الشكل
كود :
           int ii = 0;
           int Nm = ii == 0 ? 0 : -1;
           // Run Nm

فى الـ VB.NET 
عند التعامل مع IF و Else من خلال IIF يكون الكود بهذا الشكل
كود :
       Dim ii As Integer = 0
       IIf(ii = 0, 0, -1)
       ' Run ii

نلاحظ التالى بان ? : هى نفسها IIF لكن بكل لغة تكتب كما تم شرحه بالاعلى
طيب الان كيفية يمكن عمل شرط تحقق واحد داخل الاخر

فى لغة C#
يمكن عمل كود التحقق واحد داخل الاخر كما يالى
فى البداية الكود الافتراضى الخاص بـ IF Else
كود :
           int ii = 0;
           int kk = 1;
           if (ii == 0)
           {
               if(kk == 1)
               {
                   // Run Code True;
               }
               else
               {
                   // Run Code False;
               }
           }
           else
           {
               // Run Code False;
           }

لاحظ الان بطريقة ? : لنفس الكود كيف سيكون الشكل
كود :
           int ii = 0;
           int kk = 1;
           int Nm = ii == 0 ? (kk == 1 ? 1 : 0) : -1;
           // Run Nm;

قمت بوضع شرط التحقق الاخر بين (  ) لكي تتمكن من الملاحظة 

ولا يلزم وضعها فهى اختياري فيمكنك استخدامه بهذا الشكل
كود :
           int ii = 0;
           int kk = 1;
           int Nm = ii == 0 ? kk == 1 ? 1 : 0 : -1;
           // Run Nm;

فى لغة VB.NET
يمكن عمل كود التحقق واحد داخل الاخر كما يالى
فى البداية الكود الافتراضى الخاص بـ IF Else
كود :
       Dim ii As Integer = 0
       Dim kk As Integer = 1
       If ii = 0 Then
           If kk = 1 Then
               ' Run Code True
           Else
               ' Run Code False
           End If
       Else
           ' Run Code False
       End If

لاحظ الان بطريقة IIF لنفس الكود كيف سيكون الشكل
كود :
       Dim ii As Integer = 0
       Dim kk As Integer = 1
       IIf(ii = 0, IIf(kk = 1, 1, 0), -1)

طبعاً هنا بخصوص استخدام (   ) فهى الزامي يجب استخدامها

الان بعد ما عرفنا كيف استخدام IF و Else فردي ومتعدد بداخل بعض
فالان الصورة الكاملة اصبحت مبسطة حتى واذا كنت تريد جعل اكثر من 2 من IF و Else داخل بعضهم البعض

وبالنهاية اتمنى ان لا اكون مخطاء فى شئ
او سهوت عن شئ بالنهاية نحن بشر

تحياتى لصاحب الموضوع وللجميع
وتمنياتى للجميع كل التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: sendbad100 , Sajad , Sajad


الردود في هذا الموضوع
Ternary operator in C#.NET - بواسطة Sajad - 23-01-19, 12:55 AM
RE: Ternary operator in C#.NET - بواسطة sendbad100 - 23-01-19, 12:37 PM
RE: Ternary operator in C#.NET - بواسطة elgokr - 23-01-19, 02:13 PM
RE: Ternary operator in C#.NET - بواسطة Sajad - 23-01-19, 08:22 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  null-coalescing operator Sajad 0 2,104 17-07-17, 12:08 PM
آخر رد: Sajad
  Null-conditional operator Sajad 2 2,315 21-06-17, 01:48 PM
آخر رد: Sajad

التنقل السريع :


يقوم بقرائة الموضوع: