(1)自增自减运算符
自增:a++ 、++a
自减:a--、--a
前加减和后加减的区别在于,前加减是先完成自增自减后参与运算,而后加减是先完成运算后再进行自加自减。
如:
int a=1;
int b=a++ -1;
上述代码中,由于a是后加,因此先计算完b的值再进行自加,运算结束后b=0,a=2.
int a =1;
int b = ++a-1;
上述代码中,由于a是前加,因此先进行自加再计算b的值,运算结束后b=1,a=2.
注:C#中,自加自减属于一元运算符,其优先级大于二元运算符加减乘除。
(2)复合运算符
常见的复合运算符有:+=、-=、/=、%=、*=
用法举例:a+=1等价于a=a+1
(3)关系运算符
<、>、==、!=、<=、>=
常用的共六种关系运算符,用于比较两个变量的关系。
(4)关系表达式
由关系运算符连接起来的式子叫做关系表达式,关系表达式的结果为bool类型。
(5)逻辑运算符
与&&、或||、非!
逻辑与运算:
bool isRight = 表达式1 &&表达式2,逻辑与连接的两个表达式,必须都是bool类型
只有两个表达式均为true时,isRight的值为true,否则为false
逻辑或运算:
bool isRight = 表达式1 || 表达式2
当两个表达式有一个为true时,isRight的值即为true.
逻辑非运算:
bool isRight=!表达式
!是一个一元运算符,若表达式为true,则isRight的值为false;若表达式为false,则isRight的值为true。
三元表达式:
语法:
表达式1?表达式2:表达式3
如:
int a=10;
int b=100;
int c = a<b?a:b
如上三元表达式的值c=a=10.
表达式1必须是一个能够计算成bool类型的值,表达式2和表达式3的类型必须相兼容。
Console.WriteLine("{0}X{1}={2:00}",a,b,c); 00代表这一位上的数字必须是两位,如01.
(6)if语句的基本语法
if(条件)
{
语句1;
}
else
{
语句2;
}
(7)switch-case语句的基本语法
switch(表达式)
{
case 结果1:语句块1;
break;
case 结果2:语句块2;
break;
default:语句块3;
break;
}
执行过程:首先计算表达式的值,然后匹配case后面的结果,匹配上之后就执行相应语句块的内容,遇到break之后就跳出整个switch-case语句,若与所有的case后的结果都不匹配,则执行default后的语句块,如果没有default,则直接跳出什么都不执行。
注:匹配时几个case和default的位置没有关系,只和结果有关系
当多个结果要执行相同的语句块时:
switch(表达式)
{
case 结果1:
case 结果2:
语句块1;
break;
default:语句块3;
break;
}
(8)if-else if 与 switch-case语句的比较
两者都可实现多分支结构,不同之处在于,switch-case语句通常只能处理等值比较,而if-else if可以用于比较范围