C# 语言规范--1.5 表达式
点击次数:44 次 发布日期:2008-11-06 08:04:32 作者:源代码网
|
源代码网推荐
C# 包含一元运算符、二元运算符和一个三元运算符。下表概述了这些运算符,并将它们按优先级以从高到低的顺序列出:
| 章节 |
类别 |
运算符 |
| 第 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 |
^ 软件开发网 www.mscto.com |
| 第 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。 源代码网推荐
源代码网供稿. |