C#运算符及优先级

本文详细介绍了C#语言中的各种运算符,包括算术运算、自增自减、关系运算、逻辑运算、位运算、移位操作以及C#特有的特殊运算符,同时阐述了运算符的优先级规则和在编码中的注意事项。
摘要由CSDN通过智能技术生成
一、运算符

(1)算术运算符

运算符说明解释
+可以作为“正”号
-可以作为“负”号
*-
/除数不能为0
%取余除数不能为0

(2)自加自减运算符

运算符说明解释
++自增运算符

++/--i:i 先加1/减1,变化后的值再参与运算

i++/--:i 的值先参与运算,然后再加1/减1

--自减运算符
j = ++i; //相当于: i++; j = i;
j = i++;// 相当于: j = i; i++;

(3)赋值运算符

运算符示例解释运算符示例解释
=x = yy赋值给x&=x &= y位与赋值,x = x & y
+=x += y加赋值,x = x + y|=x |= y位或赋值, x = x | y
-=x -= y减赋值,x = x - y>>=x >>= y右移赋值,x = x >> y
*=x *= y乘赋值, x= x * y<<=x <<= y左移赋值, x = x << y
/=x /= y除赋值,x = x / y^=x ^= y异或赋值,x = x ^ y
%=x %= y取余赋值,x = x % y

(4)关系运算符

运算符作用结果
>

大于

比较结果布尔值(true 或 false) 
<小于
==等于
>=大于等于
<=小于等于
!=不等于

(5)逻辑运算符

运算符含义示例结合方向结果
&&逻辑与x && y左到右比较结果为true或false
||逻辑或x || y左到右
!逻辑非!x右到左

(6)位运算符

运算符含义示例计算结果
&按位与x & y对应二进制位都为” 1 “ 结果为 ” 1 “,否则为” 0 “
|按位或x | y对应二进制位都为” 0 “ 结果为 ” 0“,否则为” 1 “
~按位取反~x对应二进制位取反,” 1 “->” 0 “,” 0 “ ->" 1 "
^按位异或x ^ y对应二进制位同为” 0 “ 或 ” 1 “结果为” 0 “,否则为” 1 “

(7)移位操作

运算符含义注意
<<左移左移N位,右侧移出的空位补” 0 “
>>右移右移N位,如果最高位为” 1 “,左侧移出的空位则补” 1 “,否则补” 0 “

(8)C#特殊运算符

is 运算符:检查变量是否为指定的类型。

条件运算符:(条件) ? 表达式1 : 表达式2,条件为true,结果为表达式1,否则为表达式2.

new运算符:用于创建一个新的类型实例。

typeof运算符:用于获得系统原型对象的类型。

二、运算符优先级

通常情况下,运算符的大致顺序由高到底依次为:

自增自减运算符 —> 算术运算符 —>关系运算符 —> 逻辑运算符 —> 赋值运算符。

如果两个运算符优先级相同,则优先处理左侧的表达式。另外括号”()“会提升运算符的优先级,程序被执行时,括号“()”内的运算符将会被优先执行。

建议编码时,出现多个运算符的表达式时,应当用括号”()“表明处理顺序,以方便理解和进行后续的代码维护。

分类运算符优先级次序
基本x.y, f(x), s[x], x++, x--, new, typeof, checked, unchecked

一元+(正), -(负), !, ~, ++x, --x, (T)x
乘除*, /, %
加减+, -
移位<<, >>
比较<, >, <=, >=, is, as
相等==, !=
位与&
位异或^
位或|
逻辑与&&
逻辑或||
条件?:
赋值=, +=, -=, *=, /=, %=, &=, |=, ^=, <<=, >>=

  • 11
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值