منطقي (مرجع C#)
الكلمة الأساسية bool هي اسم مستعار لـ System.Boolean. يتم استخدامها لتعريف متغيرات لتخزين قيم منطقية, صواب و خطأ.
ملاحظة
إذا قمت بطلب متغير منطقي يمكن أن يحتوي على قيمة null، استخدم bool?. لمزيد من المعلومات، راجع الأنواع ذات القيم الخالية (دليل البرمجة لـ #C).
القيم الحرفية
يمكنك تعيين قيمة منطقية لمتغير bool . يمكنك أيضاً تعيين تعبير يقيم إلى bool إلى متغير bool.
public class BoolTest
{
static void Main()
{
bool b = true;
// WriteLine automatically converts the value of b to text.
Console.WriteLine(b);
int days = DateTime.Now.DayOfYear;
// Assign the result of a boolean expression to b.
b = (days % 2 == 0);
// Branch depending on whether b is true or false.
if (b)
{
Console.WriteLine("days is an even number");
}
else
{
Console.WriteLine("days is an odd number");
}
}
}
/* Output:
True
days is an <even/odd> number
*/
القيمة الإفتراضية bool أو متغير bool? هو false.
التحويلات
في C++ ، القيمة ذا نوع boolيمكن تحويلها إلى قيمة من النوع int; بمعنى آخر، false يكافئ الصفر و true يكافئ إلى القيم غير الصفرية. في C# ، لا يوجد تحويل بين نوع bool وأنواع أخرى. على سبيل المثال، كشف التالي if غير صالحة في C#:
int x = 123;
// if (x) // Error: "Cannot implicitly convert type 'int' to 'bool'"
{
Console.Write("The value of x is nonzero.");
}
لاختبار متغير من نوع int، فعليك مقارنته بوضوح إلى القيمة صفر، كما يلي:
if (x != 0) // The C# way
{
Console.Write("The value of x is nonzero.");
}
مثال
في هذا المثال، تقوم بإدخال حرف من لوحة المفاتيح ويقوم البرنامج بالتحقق ما إذا كان حرف الإدخال من الأحرف الأبجدية. إذا كان كذلك، فإنه يفحص ما إذا كان الحرف من الأحرف الصغيرة أو الأحرف الكبيرة. يتم تنفيذ هذه التدقيقات مع IsLetter، و IsLower، و كلاهما ترجع نوع bool:
public class BoolKeyTest
{
static void Main()
{
Console.Write("Enter a character: ");
char c = (char)Console.Read();
if (Char.IsLetter(c))
{
if (Char.IsLower(c))
{
Console.WriteLine("The character is lowercase.");
}
else
{
Console.WriteLine("The character is uppercase.");
}
}
else
{
Console.WriteLine("Not an alphabetic character.");
}
}
}
/* Sample Output:
Enter a character: X
The character is uppercase.
Enter a character: x
The character is lowercase.
Enter a character: 2
The character is not an alphabetic character.
*/
مواصفات لغة #C
لمزيد من المعلومات، راجع مواصفات لغة #C. مواصفات اللغة هي المصدر النهائي لبناء جملة C# واستخدامها.
راجع أيضًا:
المرجع
جدول الأنواع المتكاملة (مرجع C#)
جدول الأنواع المضمنة (مرجع C#)
جدول التحويلات الرقمية الواضحة (مرجع #C)
جدول التحويلات الرقمية الواضحة (مرجع #C)