文章目录
- 一、if条件表达式
- 1、`if` 语句
- 基本结构
- 示例
- 输出:
- 2、`else`语句
- 示例
- 输出:
- 3、`else if` 语句
- 示例
- 输出:
- 4、组合逻辑运算符
- 示例
- 输出:
- 5、嵌套 `if` 语句
- 示例
- 输出:
- 总结
- 二、三元运算符
- 1、语法:
- 2、示例:
- 三、**switch-case 语句**
- 1、基本语法:
- 2、示例:
- 3、break 语句
- 4、default 子句
- 5、case 后的值可以是常量、表达式
- 6、case 贯穿
- 7、匹配模式(C# 7.0 引入)
- 9、总结:
- 专栏推荐
- 完结
一、if条件表达式
1、if
语句
基本结构
if
语句的基本语法如下:
if (condition)
{
// 如果条件为真,执行这里的代码
}
condition
是一个 布尔表达式,可以是任何能够计算出true
或false
的表达式。- 如果
condition
为true
,则执行大括号{}
中的代码。如果为false
,则跳过该代码块。
示例
int a = 10;
if (a > 5)
{
Console.WriteLine("a 大于 5");
}
输出:
a 大于 5
在这个示例中,a > 5
是条件表达式,因为 a
的值是 10
,所以条件为 true
,程序会执行 Console.WriteLine
语句。
2、else
语句
如果你希望在条件为 false
时执行另一段代码,可以使用 else
语句。
if (condition)
{
// 如果条件为真,执行这里的代码
}
else
{
// 如果条件为假,执行这里的代码
}
示例
int a = 3;
if (a > 5)
{
Console.WriteLine("a 大于 5");
}
else
{
Console.WriteLine("a 小于或等于 5");
}
输出:
a 小于或等于 5
在这个例子中,a > 5
为 false
,因此程序执行了 else
中的代码。
3、else if
语句
如果有多个条件需要判断,可以使用 else if
来检查不同的条件。
if (condition1)
{
// 如果 condition1 为 true,执行这里的代码
}
else if (condition2)
{
// 如果 condition1 为 false,且 condition2 为 true,执行这里的代码
}
else
{
// 如果以上条件都为 false,执行这里的代码
}
示例
int a = 7;
if (a > 10)
{
Console.WriteLine("a 大于 10");
}
else if (a > 5)
{
Console.WriteLine("a 大于 5 但小于等于 10");
}
else
{
Console.WriteLine("a 小于或等于 5");
}
输出:
a 大于 5 但小于等于 10
在这个例子中,a
的值是 7
,满足第二个条件 a > 5
,所以执行了 else if
中的代码。
4、组合逻辑运算符
有时你需要根据多个条件判断,可以使用逻辑运算符(如 && 和 ||)来组合多个条件。
&&
代表 与,即两个条件都必须为true
。||
代表 或,即其中一个条件为true
即可。
示例
int a = 8;
int b = 4;
if (a > 5 && b < 5)
{
Console.WriteLine("a 大于 5 且 b 小于 5");
}
if (a > 5 || b < 5)
{
Console.WriteLine("a 大于 5 或 b 小于 5");
}
输出:
a 大于 5 且 b 小于 5
a 大于 5 或 b 小于 5
- 第一个条件
a > 5 && b < 5
满足,因为 a 大于 5 且 b 小于 5。 - 第二个条件
a > 5 || b < 5
也满足,因为 a 大于 5。
5、嵌套 if
语句
有时你需要在一个 if
语句中嵌套另一个 if
语句。C# 允许这样做。
示例
int a = 7;
int b = 3;
if (a > 5)
{
if (b < 5)
{
Console.WriteLine("a 大于 5 且 b 小于 5");
}
}
输出:
a 大于 5 且 b 小于 5
在这个示例中,首先判断 a > 5
,然后如果条件为 true
,继续判断 b < 5
,最终输出结果。
总结
if
语句用于判断条件是否成立,条件为true
时执行代码块。else
语句用于在条件为false
时执行其他代码。else if
用于检查多个条件,允许你实现多路选择。- 使用逻辑运算符
&&
和||
来组合多个条件。 - 可以嵌套
if
语句,实现更复杂的判断。
希望这些示例能帮助你理解 C# 中的 if
语句!如果有其他问题或想了解更多内容,随时可以问我。
二、三元运算符
三元运算符是 C# 中一种简洁的条件表达式,它由 ?
和 :
组成,能够根据条件选择两个值之一。
1、语法:
result = 条件 ? 值1 : 值2;
- 如果
条件
为 true,result
的值为值1
,否则为值2
。
2、示例:
int age = 20;
string result = age >= 18 ? "成年人" : "未成年人";
Console.WriteLine(result); // 输出 "成年人"
三、switch-case 语句
switch
语句用于对一个表达式的多个值进行判断,通常用于值有限且明确的情况。让顺序执行的代码产生分支。
1、基本语法:
switch (表达式)
{
case 值1:
// 当表达式等于值1时执行的代码
break;
case 值2:
// 当表达式等于值2时执行的代码
break;
default:
// 如果没有匹配的值时执行的代码
break;
}
2、示例:
int day = 3;
switch (day)
{
case 1:
Console.WriteLine("星期一");
break;
case 2:
Console.WriteLine("星期二");
break;
case 3:
Console.WriteLine("星期三");
break;
default:
Console.WriteLine("未知的星期");
break;
}
3、break 语句
每个 case 后面通常都需要一个 break 语句来终止 switch 语句块。如果没有 break,程序将继续执行下一个 case,即使它的条件不满足,这种行为称为贯穿(fall-through)。在 C# 中,switch-case 不允许自动贯穿,即必须显式地使用 break 来终止每个 case。如果不使用 break,将会导致编译错误。
switch (day)
{
case 1:
Console.WriteLine("Monday");
break;
case 2:
Console.WriteLine("Tuesday");
break;
case 3:
Console.WriteLine("Wednesday");
break;
// 省略 break 会导致编译错误
}
4、default 子句
default 子句是可选的,如果你知道所有可能的情况都已涵盖,你可以省略它。对于某些简单的情况,省略 default 是合理的,但如果有可能会遇到未预见的值,最好加上 default 来确保代码的健壮性。
switch (day)
{
case 1:
Console.WriteLine("Monday");
break;
case 2:
Console.WriteLine("Tuesday");
break;
// 省略 default 语句
}
5、case 后的值可以是常量、表达式
case 后面的值可以是常量(如整数、字符、字符串等),也可以是常量表达式,但不能是变量。
switch (num)
{
case 1 + 1:
Console.WriteLine("Two");
break;
case 3:
Console.WriteLine("Three");
break;
default:
Console.WriteLine("Unknown");
break;
}
在这个例子中,case 1 + 1 等价于 case 2。
6、case 贯穿
如果多个 case 语句应该执行相同的代码,可以将它们写在一起,而不需要重复代码。这种情况在 C# 中称为 case 贯穿。
switch (score)
{
case 90:
case 91:
case 92:
Console.WriteLine("Excellent!");
break;
case 75:
Console.WriteLine("Good!");
break;
default:
Console.WriteLine("Keep trying!");
break;
}
这里,score 如果是 90、91 或 92,都会输出 “Excellent!”。
7、匹配模式(C# 7.0 引入)
C# 7.0 引入了模式匹配(is 操作符的扩展),它允许你在 switch-case 中使用更复杂的匹配规则,比如类型检查、变量绑定等。
object obj = "Hello, world!";
switch (obj)
{
case int i:
Console.WriteLine($"Integer: {i}");
break;
case string s:
Console.WriteLine($"String: {s}");
break;
default:
Console.WriteLine("Other type");
break;
}
这个例子展示了如何使用类型匹配来确定 obj 的实际类型。object 是什么可能还不了解,但是没关系,后面会讲的。
9、总结:
- if-else:用于简单的条件判断。
- if-else if-else:用于多个条件判断。
- 三元运算符:用于简洁地进行条件选择。
- switch-case:用于对某一变量的多个可能值进行条件判断。
专栏推荐
地址 |
---|
【从零开始入门unity游戏开发之——C#篇】 |
【从零开始入门unity游戏开发之——unity篇】 |
【制作100个Unity游戏】 |
【推荐100个unity插件】 |
【实现100个unity特效】 |
【unity框架开发】 |
完结
赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注
,你的每一次支持
都是我不断创作的最大动力。当然如果你发现了文章中存在错误
或者有更好的解决方法
,也欢迎评论私信告诉我哦!
好了,我是向宇
,https://xiangyu.blog.csdn.net
一位在小公司默默奋斗的开发者,闲暇之余,边学习边记录分享,站在巨人的肩膀上,通过学习前辈们的经验总是会给我很多帮助和启发!如果你遇到任何问题,也欢迎你评论私信或者加群找我, 虽然有些问题我也不一定会,但是我会查阅各方资料,争取给出最好的建议,希望可以帮助更多想学编程的人,共勉~