㈠运算符和关系表达式
一元运算符++、-- 前加和后加区别,事例++在后如下:
int age = 18; int sum = age++ - 10; //结果age=19 说明age++在表达式中age的值也+1.结果sum=8,原因age++,++在后用age的原值进行计算 Console.WriteLine("sum = {0} ,age = {1}", sum, age);
事例++在前如下:
int age = 18; int sum = ++age - 10; //结果age=19 说明不管++在前还是在后对age本身的值没有影响. //结果sum=9,原因++age,++在前用++age的值进行计算 Console.WriteLine("sum = {0} ,age = {1}", sum, age);
int var1, var2 = 5, var3 = 6; var1 = var2++ * --var3; //结果分别是:var1 = 5*5,var2 = 6,var3 = 5 Console.WriteLine("var1 = {0} ,var2 = {1} var3 = {2}", var1, var2,var3)
上面的var1、var2、var3的值说明++或--的运算优先级要高于乘法运算。
上面的age、sum代码说明:参与运算的++age和age++ ,age变量的值都发生了+1的变化。++age在前用age的新值进行运算,++在后用age的原值进行运算。--在前在后同++原理一样。
㈡关系运算符
有6中 >、<、==、!=、>=、<=
规则
- 关系表达式,就是由关系运算符连接起来的式子。关系表达式的结果是bool类型
- 关系运算符两边的类型要相同,数值型 或字符串,布尔型。其中字符串型只能比较 ==或 != 不能比较大小。
关系运算符的优先级
>、<、>=、<= 大于 == !=
㈢逻辑运算符
表达式1 && 表达式2 → 表达式1和表达式2一般也是bool类型,所以逻辑表达式的结果也是bool类型。
&&→ And →并且
|| → Or →或者
!→ 取反
优先级
!>关系运算符 > && >||
注意:&&和|| 表达式1为True时,表达式2将不执行。测试事例:
int a = 10, b = 5; bool result = ++a > 20 && ++b > 10; //结果a=11 ,b=5 .将如表达式1为False那么表达式2就不执行了 Console.WriteLine("result = {2} ,a = {0} ,b = {1}", a, b,result);