bool (C#-Reference)
bool Klíčové slovo je alias pro System.Boolean.Používá se k ukládání booleovské hodnoty proměnné deklarovat true a false.
[!POZNÁMKA]
Pokud požadujete booleovské proměnné, která může mít také hodnotu null, použijte bool?.Další informace naleznete v tématu Typy s možnou hodnotou Null (Příručka programování C#).
Literály
Můžete přiřadit logickou hodnotu, která bool proměnné.Můžete také přiřadit výraz, jehož výsledkem bool se bool proměnné.
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
*/
Výchozí hodnota bool je proměnná false.Výchozí hodnota bool? je proměnná null.
Převody
V jazyce C++ hodnotu typu bool lze převést na hodnotu typu int; jinými slovy false je rovna nule a true je ekvivalentní nenulové hodnoty.V jazyce C# neexistuje žádný převod mezi bool typu a další typy.Například následující if příkaz není platný v jazyce C#:
int x = 123;
// if (x) // Error: "Cannot implicitly convert type 'int' to 'bool'"
{
Console.Write("The value of x is nonzero.");
}
Testování proměnné typu int, je nutné explicitně porovnat hodnotu, například nula, takto:
if (x != 0) // The C# way
{
Console.Write("The value of x is nonzero.");
}
Příklad
V tomto příkladu zadejte znak z klávesnice a program kontroluje, pokud je vstupní znak písmeno.Je-li dopis, kontroluje, pokud je malá nebo velká písmena.Tyto kontroly jsou prováděny s IsLetter, a IsLower, oba které návrat bool typu:
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.
*/
Specifikace jazyka C#
Další informace naleznete v tématu Specifikace jazyka C#. Specifikace jazyka je úplným a rozhodujícím zdrojem pro syntaxi a použití jazyka C#.
Viz také
Referenční dokumentace
Nedílnou tabulky typy (C#-Reference)
Předdefinované typy (C#-Reference)
Implicitní číselné tabulky převody (C#-Reference)
Explicitní číselné tabulky převody (C#-Reference)