包含一元运算符、二元运算符和一个三元运算符。下表概述了这些运算符,并将它们按优先级以从高到低的顺序列出: 章节 类别 运算符 第 7.5 节 基本 x." name="description" />

C# 语言规范--1.5 表达式

发表于:2007-06-21来源:作者:点击数: 标签:
C# MI LY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">包含一元运算符、二元运算符和一个三元运算符。下表概述了这些运算符,并将它们按优先级以从高到低的顺序列出: 章节 类别 运算符 第 7.5 节 基本 x.

   

C# MILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">包含一元运算符、二元运算符和一个三元运算符。下表概述了这些运算符,并将它们按优先级以从高到低的顺序列出:

 

章节 类别 运算符

 

7.5   基本 x.y  f(x)  a[x]  x++  x--  new

typeof  checked  unchecked

 

7.6 一元 +  -  !  ~  ++x  --x  (T)x

 

7.7 乘法 *  /  %

 

7.7 加法 +  -

 

7.8 移位 <<  >>

 

7.9 关系和类型检测 <  >  <=  >=  is  as

 

7.9 相等 ==  !=

 

7.10 逻辑 AND &

 

7.10 逻辑 XOR ^

 

7.10 逻辑 OR |

 

7.11 条件 AND &&

 

7.11 条件 OR ||

 

7.12 条件 ?:

 

7.13 赋值 =  *=  /=  %=  +=  -=  <<=  >>=  &=  ^=  |=

 

当表达式包含多个运算符时,运算符的优先级控制各运算符的计算顺序。例如,表达式 x + y * z x + (y * z) 计算,因为 * 运算符具有的优先级比 + 运算符高。

 

当操作数出现在具有相同优先级的两个运算符之间时,运算符的顺序关联性控制运算的执行顺序:

 

除了赋值运算符外,所有的二元运算符都向左顺序关联,意思是从左向右执行运算。例如,x + y + z (x + y) + z 计算。

 

赋值运算符和条件运算符 (?:) 向右顺序关联,意思是从右向左执行运算。例如,x = y = z x = (y = z) 计算。

 

优先级和顺序关联性都可以用括号控制。例如,x + y * z 先将 y 乘以 z 然后将结果与 x 相加,而 (x + y) * z 先将 x y 相加,然后再将结果乘以 z

原文转自:http://www.ltesting.net

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)