介绍
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
