专栏首页GreenLeavesC#运算符的优先级

C#运算符的优先级

在C#中,一共有38个常用的运用符,根据它们所执行运算的特点和它们的优先级,为了便于记忆,我将它们归为七个等级:1、单元运算符和括号。2、常规算术运算符。3、位移运算符。4、比较运算符。5、逻辑运算符。6、各种赋值运算符。7、右位(后缀)单元运算符。  1、在这一级中,有++、--(做为前缀)、()、+、-(做为单元运算符)、!、~。这一级中都是单元运算符,除了其中那一对特殊的具有改变任何运算优先级的括号。这此可以看出,在定义表达式中,那些单元运算符的优先级是很高的,可能是因为它们都直接作用于操作数吧。只有两个单元运算符的优先级不在第一级中,它们因为特殊的原因出现在了后面。  2、在常规算术运算符中,有我们经常使用的*、/、%、+、-,因为他们使用得较多,所以也排在较高的位置。  3、这一级是两个特殊的位操作符,<< 和 >>,它们是所有二元操作符中除常规运算符外优先级最高的了,可能是因为与比较运算符、逻辑运算符比起来,这一组操作符进行的还是数值的计算。  4、比较运算符,包括<、>、<=、>=、==、!=,一共六个,这里有一个特点,就小于优先于大于。  5、逻辑运算符,逻辑运算符原本有四种,但用于单元的“非”运算符排在了前面,所以这里面就只有&、^、|,再加上两个补充的用于提高代码效率的运算符&&、||,共有五个。  6、赋值运算符,这一级最多,几乎前面出现过的二元运算符,在这里加上个“=”号就成为一个赋值运算符。首先当然最基本的赋值运算符“=”;然后是常规算术运算符演变来的“*=、/=、%=、+=、-=”,它们的顺序和常规算术符的顺序一样;然后是位移运算符和逻辑运算符,也按它们演变前的顺序排列,为“<<=、>>=、&=、^=、|=”。因为比较运算符所产生的结果的数据类型和它的运算数的数据类型不同,所以它们没有相应的赋值运算符。  7、最后一级,就是那两个最后的单元运算符后缀版的++、--。它们的出现就是为了做为那两个前缀版的==、--的补充(那两个的优先级太高了,人们需要两个优先级不那么高的),以方便设计表达式,所以这两个的优先级当然要排在最后了。  那么,这38个操作符的优先级顺序就可以写成如下了:(无论是横向还是竖向,越靠前优先级越高)  第一级:++、--(做为前缀)、()、+、-(做为单元运算符时)、!、~。  第二级:*、/、%、+、-。  第三级:<<、>>。  第四级:<、>、<=、>=、==、!=。  第五级:&、^、|、&&、||。  第六级:=、*=、/=、%=、+=、-=、<<=、>>=、&=、^=、|=。  第七级:++、--(做为后缀)。 

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 微信小程序环境搭建

    第一步  IDE下载 Win版链接: https://pan.baidu.com/s/1gfAy18n 第二步 破解 最新下载链接: https://pan.b...

    郑小超.
  • SQL学习之联结表的使用

    1、简介:"联结(join)表"是SQL最强大的功能之一。联结是利用SQL的SELECT能执行的最重要的操作,很好地理解联结及其语法是学习SQL的极为重要的部分...

    郑小超.
  • Composite组合模式(结构型模式)

    在面向对象系统中,经常会遇到一些具有"容器性质"的对象,它们自己在充当容器的同时,也充当其他对象的容器.

    郑小超.
  • 「Java Grammar」:运算符

    计算机自打诞生以来,用作最多的就是进行计算,而计算离不开运算符,所以运算符在我们的Java语言中的地位举足轻重,我们现在就来了解一下Java给我们提供的运算符。

    山禾说
  • Python入门系列第二章--第四节:运算符(一)

    顾名思义,算术运算符就是用来进行算数运算的一些符号。那么算术运算符包含哪些呢?除了有我们常用的 加、减、乘、除 外,还有 取模、幂、取整除 ,这些运算符的解释详...

    喵叔
  • 第二章--第三节:运算符(一)

    顾名思义,算术运算符就是用来进行算数运算的一些符号。那么算术运算符包含哪些呢?除了有我们常用的 加、减、乘、除 外,还有 取模、幂、取整除 ,这些运算符的解释详...

    喵叔
  • c++之运算符

    算数运算符:+(正) -(负) + - * / % i++(先赋值后自增) ++i(先自增后赋值) i--(先赋值后自减) --i(先自减后赋值)

    绝命生
  • Go语言学习01

    安包
  • excel公式中14种运算符,帮你整理齐了

    文 | 赵志东 运算符是公式中最主要的组成部分,包括数学运算符、逻辑运算符和连接运算符等,下面我们就全面学习一下excel公式里的运算符。 一、运算符 1、 数...

    CDA数据分析师
  • 【笔记】《C++Primer》—— 第14章:重载运算和类型转换

    这一章介绍了对运算符的重载和类型转换,其中最重要的是对各种运算符的运用,14.8对function类的运用和14.9对类型转换时可能产生的二义性的理解,...

    ZifengHuang

扫码关注云+社区

领取腾讯云代金券