C# 布尔值
在编程中,通常需要一个只能有两个值之一的数据类型,比如:
- 是 / 否
- 开 / 关
- 真 / 假
为此,C# 有一个 bool
数据类型,可以取 true
或 false
的值。
布尔值
使用 bool
关键字声明布尔类型,只能取 true
或 false
的值:
示例:
代码语言:csharp复制bool isCSharpFun = true;
bool isFishTasty = false;
Console.WriteLine(isCSharpFun); // 输出 True
Console.WriteLine(isFishTasty); // 输出 False
然而,更常见的是从布尔表达式中返回布尔值,用于条件测试。
布尔表达式
布尔表达式通过比较值/变量返回布尔值:True
或 False
。这对于构建逻辑和找到答案很有用。
例如,您可以使用比较运算符,比如大于(>
)运算符,以查找表达式(或变量)是否为 true
:
示例:
代码语言:csharp复制int x = 10;
int y = 9;
Console.WriteLine(x > y); // 返回 True,因为 10 高于 9
甚至更简单:
示例:
代码语言:csharp复制Console.WriteLine(10 > 9); // 返回 True,因为 10 高于 9
在下面的示例中,我们使用等于(==
)运算符来评估表达式:
示例:
代码语言:csharp复制int x = 10;
Console.WriteLine(x == 10); // 返回 True,因为 x 的值等于 10
示例:
代码语言:csharp复制Console.WriteLine(10 == 15); // 返回 False,因为 10 不等于 15
现实生活中的例子
让我们想象一个“现实生活中的例子”,我们需要找出一个人是否足够年龄投票。
在下面的示例中,我们使用 >=
比较运算符来查找年龄(25)是否大于或等于投票年龄限制,该限制设置为 18:
示例:
代码语言:csharp复制int myAge = 25;
int votingAge = 18;
Console.WriteLine(myAge >= votingAge);
很酷,对吧?更好的方法是将上述代码包装在 if...else
语句中,这样我们可以根据结果执行不同的操作:
示例:
如果 myAge
大于或等于 18,则输出“足够年龄投票!”。否则输出“不足够年龄投票。”:
int myAge = 25;
int votingAge = 18;
if (myAge >= votingAge)
{
Console.WriteLine("Old enough to vote!");
}
else
{
Console.WriteLine("Not old enough to vote.");
}
表达式的布尔值是所有 C# 比较和条件的基础。
C# 条件和 if 语句
C#
支持数学中的常见逻辑条件:
- 小于:a < b
- 小于或等于:a <= b
- 大于:a > b
- 大于或等于:a >= b
- 等于:a == b
- 不等于:a != b
您可以使用这些条件来执行不同的决策。
C# 具有以下条件语句:
- 使用
if
指定要执行的代码块,如果指定的条件为true
- 使用
else
指定要执行的代码块,如果相同的条件为false
- 使用
else if
指定要测试的新条件,如果第一个条件为false
- 使用
switch
指定要执行的许多替代代码块
if 语句
使用 if
语句指定在条件为 True 时要执行的 C# 代码块。
语法:
代码语言:csharp复制if (condition)
{
// 如果条件为 True,则执行的代码块
}
请注意,if
是小写字母。大写字母(If
或 IF
)将生成错误。
在下面的示例中,我们测试两个值,以查找 20 是否大于 18。如果条件为 True,则打印一些文本:
示例:
代码语言:csharp复制if (20 > 18)
{
Console.WriteLine("20 is greater than 18");
}
我们也可以测试变量:
示例:
代码语言:csharp复制int x = 20;
int y = 18;
if (x > y)
{
Console.WriteLine("x is greater than y");
}
示例说明:
在上面的示例中,我们使用两个变量 x 和 y 来测试 x 是否大于 y(使用 >
运算符)。由于 x 为 20,y 为 18,并且我们知道 20 大于 18,因此我们在屏幕上打印 "x is greater than y"。
C# else 语句
使用 else
语句指定在条件为 False 时要执行的代码块。
语法:
代码语言:csharp复制if (condition)
{
// 如果条件为 True,则执行的代码块
}
else
{
// 如果条件为 False,则执行的代码块
}
示例:
代码语言:csharp复制int time = 20;
if (time < 18)
{
Console.WriteLine("Good day.");
}
else
{
Console.WriteLine("Good evening.");
}
// 输出 "Good evening."
示例说明:
在上面的示例中,时间(20)大于 18,因此条件为 False。因此,我们转到 else
条件并在屏幕上打印 "Good evening"。如果时间小于 18,程序将打印 "Good day"。
C# 中的 else if 语句
使用 else if
语句在第一个条件为 False
时指定新的条件。
if (condition1)
{
// 如果condition1为真,则执行的代码块
}
else if (condition2)
{
// 如果condition1为假且condition2为真,则执行的代码块
}
else
{
// 如果condition1为假且condition2为假,则执行的代码块
}
// 示例
int time = 22;
if (time < 10)
{
Console.WriteLine("早上好。");
}
else if (time < 20)
{
Console.WriteLine("白天好。");
}
else
{
Console.WriteLine("晚上好。");
}
// 输出 "晚上好。"
示例说明:
在上面的示例中,时间(22)大于 10,因此第一个条件为 False
。在 else if
语句中的下一个条件也为 False
,因此我们转到 else
条件,因为 condition1
和 condition2
都为 False
,并在屏幕上打印"晚上好"。
然而,如果时间是 14,我们的程序将打印"白天好"。
最后
看完如果觉得有帮助,欢迎 点赞、收藏、关注