03、运算符
一、二元运算符
运算符 | 类别 | 示例表达式 | 结 果 |
+ | 二元 | var1=var2+var3 | 相加或两个字符串连接 |
- | 二元 | var1=var2-var3 | 相减 |
* | 二元 | var1=var2*var3 | 相乘 |
/ | 二元 | var1=var2/var3 | 相除 |
% | 二元 | var1=var2%var3 | 余数 |
二、一元运算符
运算符 | 类别 | 示例表达式 | 结 果 |
++ | 一元 | var1=var2++; | var1的值是var2+1,var2递增1 |
++ | 一元 | var1=++var2; | var1的值是var2,var2递增1 |
-- | 一元 | var1=--var2; | var1的值是var2-1,var2递减1 |
-- | 一元 | var1=var2--; | var1的值是var2,var2递减1 |
+ | 一元 | var1=+var2; | var1的值等于var2的值 |
- | 一元 | var1=-var2; | var1的值等于var2的值除乘以-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相除所得的余数 |
四、运算符的优先级
优先级 | 运算符 |
由高到低 | ++,--(用作前缀);+,-(一元) |
*,/,% | |
+,- | |
=,*=,/=,%=,+=,-= | |
++,--(用作后缀) |
五、布尔运算符
运算符 | 类别 | 示例表达式 | 结 果 |
== | 二元 | var=var1==var2 | var1等于var2,var的值为true,否则为False |
!= | 二元 | var=var1!=var2 | var1不等于var2,var的值为true,否则为False |
< | 二元 | var=var1<var2 | var1小于var2,var的值为true,否则为False |
> | 二元 | var=var1>var2 | var1大于var2,var的值为true,否则为False |
<= | 二元 | var=var1<=var2 | var1小于等于var2,var的值为true,否则为False |
>= | 二元 | var=var1>=var2 | var1大于等于var2,var的值为true,否则为False |
六、布尔赋值运算符
运算符 | 类别 | 示例表达式 | 结 果 |
&= | 二元 | var1&=var2 | var1等于var1 & var2的结果 |
|= | 二元 | var1|=var2 | var1等于var1 | var2的结果 |
^= | 二元 | var1^=var2 | var1等于var1^var2的结果 |
运算符 | 描述 |
---|---|
& | 与 |
\ | 或 |
^ | 异或 |
真值表如下
p | q | p&q | p \ q | p^q |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 0 |
1 | 0 | 0 | 1 | 1 |
注:0表示false,1表示true
六、三元运算符
比较条件?为True的值 :为False的值
七、其他运算符
运算符 | 示例表达式 | 说明 |
checked、unchecked |
int number = 1234; shor sr = checked(Convert.Toint16(number)); |
显式启用取消溢出检查 |
is |
object obj = "hello"; if(obj is = string) {... ...} |
检查对象是否与给定类型兼容 |
sizeof |
int intsize = sizeof(int); Console.WriteLine(intsize); |
获取值类型的字节大小 |
typeof |
type type = typeof(int); Console.WriteLine(type.Tostring()); |
获取类型的System.Type对象 |