C#运算符

算术运算符

运算符说明
+对两个操作数做加法运算
-对两个操作数做减法运算
*对两个操作数做乘法运算
/对两个操作数做除法运算
%对两个操作数做取余运算

tips:

  • 当有字符串类型的值参与 + 运算符,代表的是连接,例如"123" + 456的结果为"123456"。
  • 当使用 / 运算符时也要注意操作数的数据类型,如果两个操作数的数据类型都为整数,那么结果相当于取整运算,不包括余数;而两个操作数中如果有一个操作数的数据类型为浮点型,那么结果则是正常的除法运算。
  • 当使用 % 运算符时,如果两个操作数都为整数,那么结果相当于取余数。经常使用该运算符来判断某个数是否能被其他的数整除。

逻辑运算符

逻辑运算符主要包括与、或、非等,它主要用于多个布尔型表达式之间的运算。

运算符含义说明
&&逻辑与如果运算符两边都为True,则整个表达式为True,否则为False;如果左边表达式为False,则不对右边表达式进行计算,短路运算,相当于"且"的含义
||逻辑或如果运算符两边有一个或两个为True,整个表达式为True,否则为False;如果左边为True,则不对右边表达式进行计算,相当于"或"的含义
!逻辑非表示和原来的逻辑相反的逻辑

位运算

所谓位运算是将数值型的值转换成二进制后的运算,由于是对二进制数进行运算,所以使用位运算对操作数进行运算的速度稍快。

位运算包括与、或、非、左移、右移等,具体的表示符号如下表所示。

运算符说明
&按位与 两个位数都为1,则将结果位为1,否则为0;也可以对布尔型的值进行比较,相当于"与"运算,但不是短路运算
|按位或 两个位数都为0,则将结果位为0,否则为1;也可以对布尔型的值进行比较,相当于"或"运算,但不是短路运算。
~按位非 当位数为1时,则结果位为0;当位数为0时,则结果位为1。该操作符不能用于布尔型。对正整数取反,则在原来的数上加1,然后取负数;对负整数取反,则是原来的数上加1,然后取绝对值。1
<<左移,将操作符左边的数向左移动操作符右边指定的位数,右边应移动空出的部分补0
>>有符号右移,把运算符左边的操作数向右移动运算符右边指定的位数。如果是正值,左侧因移动空出的部分补 0;如果是负值,左侧因移动空出的部分补 1

三元表达式

布尔表达式?表达式1:表达式2
  • 布尔表达式:判断条件,一个结果为布尔型值的表达式
  • 表达式1:如果判断条件为True,该三元运算符结果就是表达式1的运算结果
  • 表达式2:如果判断条件为False,该三元运算符结果就是表达式2的运算结果

需要注意,在三元运算符中表达式1和表达式2的结果的数据类型要兼容。

赋值运算符

与C语言相同
++和–运算符在操作数前后有区别,在操作数前先进行加减,然后操作数再与其他数做运算;在操作数后先进行运算,然后操作数自身再加1.


  1. 整数在内存中的存储都是以补码的形式存储,所以都要进行原反补的转换。正整数的原反补相同,负整数的反码是原码除符号位的按位取反,补码是反码加1。 ↩︎

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值