介绍
C#中的运算符有很多,从操作上划分有:一元运算符(即:处理一个操作数),二元运算符(即处理三个操作数),三元运算符(即:处理三个操作数);从功能上划分有:算术运算符,赋值运算符,关系运算符,条件运算符,位运算符,逻辑运算符。
下面就从功能上给大家划分一下:
算术运算符
算数运算符主要用于数学计算,主要有:+,-,*,/,%,++ 和 -- 七种,如下表所示:
运算符 | 类别 | 举例 | 结果 |
---|---|---|---|
+ | 二元 | var1=var2+var3 | var1的值是var2和var3的和 |
- | 二元 | var1=var2-var3 | var1的值是var2和var3的差 |
* | 二元 | var1=var2*var3 | var1的值是var2和var3的乘积 |
/ | 二元 | var1=var2/var3 | var1的值是var2除以var3所得的商 |
% | 二元 | var1=var2%var3 | var1的值是var2除以var3所得的余数 |
++ | 一元 | var1++ | 使var1的值自动增加1 |
-- | 一元 | var1-- | 使var1的值自动减去1 |
说明:加法运算符,减法运算符,乘法运算符,除法运算符以及模运算符被称为基本的算术运算符,主要用来对数值类型的计算。
赋值运算符
赋值运算符用于将一个数据赋予一个变量,属性或者引用,数据可以是常量,也可以是表达式。如下表所示:
运算符 | 类别 | 举例 | 结果 |
---|---|---|---|
= | 二元 | var1=var2 | var1被赋予了var2的值 |
+= | 二元 | var1+=var2 | var1被赋予了var1与var2的和 |
-= | 二元 | var1-=var2 | var1被赋予了var1与var2的差 |
*= | 二元 | var1*=var2 | var1被赋予了var1与var2的乘积 |
/= | 二元 | var1/=var2 | var1被赋予了var1与var2的相除的结果 |
%= | 二元 | var1%=var2 | var1被赋予了var1与var2的相除的余数 |
关系运算符
关系运算符表示了对操作数的比较运算,有关系运算符组成的表达式就是关系表达式,关系表达式的结果要么是真要么是假,即:true或false。如下表所示:
运算符 | 类别 | 举例 | 描述 |
---|---|---|---|
> | 二元 | var1=var2>var3 | 如果var2大于var3,则var1等于true,反之,则等于false |
< | 二元 | var1=var2<var3 | 如果var2小于var3,则var1等于true,反之,则等于false |
== | 二元 | var1=var2==var3 | 如果var2等于var3,则var1等于true,反之,则等于false |
>= | 二元 | var1=var2>=var3 | 如果var2不小于var3,则var1等于true,反之,则等于false |
<= | 二元 | var1=var2<=var3 | 如果var2不大于var3,则var1等于true,反之,则等于false |
!= | 二元 | var1=var2!=var3 | 如果var2不等于var3,则var1等于true,反之,则等于false |
逻辑运算符
逻辑运算符主要用于逻辑判断,包括逻辑与,逻辑或和逻辑非。由逻辑运算符组成的表达式是逻辑表达式,其值结果要么是真要么是假,即:true或false。如下表所示:
运算符 | 类别 | 举例 | 描述 |
---|---|---|---|
&& | 二元 | var1=var2&&var3 | 如果var2和var3都是true,则var1等于true,否则var1等于false |
|| | 二元 | var1=var2||var3 | 如果var2和var3为true(二者任一为true),则var1等于true,否则var1等于false |
! | 一元 | !var1 | 如果var1等于true,则!var1等于false;反之!var1=true |
位运算符
位运算符是以二进制的方式操作数据,并且操作数和结果都是整数类型的数据。如下表所示:
运算符 | 类别 | 描述 |
---|---|---|
& | 按位与 | 把两个操作数对应的二进制进行“与”操作 |
| | 按位或 | 把两个操作数对应的二进制进行“或”操作 |
^ | 按位异或 | 把两个操作数对应的二进制进行“异或”操作 |
~ | 按位取反 | 一元运算符,对二进制数进行按位取反 |
<< | 左移 | 二元运算符,将一个数的二进制进行左移动操作,高位被舍弃 |
>> | 右移 | 二元运算符,将一个数的二进制进行右移动操作,低位被舍弃 |
条件运算符
条件运算符是C#中唯一的一个三元运算符,其表达式结构为:操作数1?操作数2:操作数3;(注意:操作数1的值必须是逻辑值)含义是:当逻辑值操作数1值为true是,则条件运算符的值等一操作数2的值;反之操作数1等于false,则条件运算符的值等于操作数3的值。
例如:
int a=10;
int b=20;
int c=a>b?30:40;
则 a>b=false,c=40