Sdílet prostřednictvím


bool (Referenční dokumentace jazyka C#)

bool Klíčové slovo je alias pro 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 povolenou hodnotou Null (Průvodce programováním v 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 najdete 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

Klíčová slova jazyka C#

Tabulka celočíselných typů (Referenční dokumentace jazyka C#)

Tabulka předdefinovaných typů (Referenční dokumentace jazyka C#)

Tabulka implicitních číselných převodů (Referenční dokumentace jazyka C#)

Tabulka explicitních číselných převodů (Referenční dokumentace jazyka C#)

Koncepty

Průvodce programováním v C#

Další zdroje

Referenční dokumentace jazyka C#