.Net运算符
-
运算符
C# 提供大量运算符,这些运算符是指定在表达式中执行哪些操作的符号。通常允许对枚举进行整型运算,例如 ==、!=、<、>、<=、>=、binary +、binary -、^、&、|、~、++、-- 和 sizeof()。此外,很多运算符可被用户重载,由此在应用到用户定义的类型时更改这些运算符的含义。
运算符类别 | 运算符 |
---|---|
基本 |
|
一元 |
|
乘法 |
|
加法 |
|
变换 |
|
关系和类型检测 |
|
相等 |
|
逻辑“与” |
|
逻辑 XOR |
|
逻辑“或” |
|
条件 AND |
|
条件 OR |
|
条件运算 |
|
赋值 |
-
运算符优先级
前++ 前-- +(正号) -(负号)! ~
* / %
+ -
<< >>
< > <= >=
== !=
&
^
|
&&
||
赋值运算
后++ 后--
-
可重载运算符
C# 允许用户定义的类型通过使用 operator 关键字定义静态成员函数来重载运算符。但不是所有的运算符都可被重载,下表列出了不能被重载的运算符:
运算符 | 可重载性 |
---|---|
可以重载这些一元运算符。 |
|
可以重载这些二进制运算符。 |
|
比较运算符可以重载(但请参见本表后面的说明)。 |
|
条件逻辑运算符不能重载,但可使用能够重载的 & 和 | 进行计算。 |
|
不能重载数组索引运算符,但可定义索引器。 |
|
赋值运算符不能重载,但 += 可使用 + 计算,等等。 |
|
不能重载这些运算符。 |
-
语法
- public static Complex operator +(Complex c1, Complex c2)
#p#
.Net 基础语句
分支语句
- 三元运算符
- (……)?b:c
- (s == null) ? "" :s;
- if else语句
- if(){}
- else if(){}
- else{}
- switch语句
- switch(var)
- {
- case <value>: …… break;
- default: …… break;
- }
迭代语句
- do/while循环
- do
- {……}
- while(<test>);
- while循环
- while(<test>)
- {……}
- for循环
- for(<初始化>;<条件>;<操作>)
- {……}
- foreach,in循环
- foreach(<baseType> <name> in <array>)
- {……}
跳转语句
- break
立即终止循环
- continue
结束当前循环,进入下一次循环
- goto
跳出循环到标记位置
- goto <labelName>;
- <labelName>:
- return
跳出循环并结束包含其的方法
异常块语句
- throw
throw 语句用于发出在程序执行期间出现反常情况(异常)的信号。
- try-catch
try-catch 语句由一个 try 块后跟一个或多个 catch 子句构成,这些子句指定不同的异常处理程序,指定通用的异常处理使用catch{......}。
- try-finally
finally 块用于清除 try 块中分配的任何资源,以及运行任何即使在发生异常时也必须执行的代码。控制总是传递给 finally 块,与 try 块的退出方式无关。
- try-catch-finally
catch 和 finally 一起使用的常见方式是:在 try 块中获取并使用资源,在 catch 块中处理异常情况,并在 finally 块中释放资源。
- try
- {
- checked{……}
- }
- catch(OverflowException ex)
- {
- ……
- }
溢出监测语句
- checked
测试数值类型做算术运算时是否溢出,溢出时获得异常System.OverflowException
- unchecked
- {……}
原文链接:http://www.cnblogs.com/liusuqi/archive/2013/06/13/3133439.html
http://www.cnblogs.com/liusuqi/archive/2013/05/30/3107428.html