【前言】
最近在学习C#的运算符,总结一下,请大家多多指教!我觉得学习过程中不应该只是学习规定的内容,我会把扩展的也学一下,相关的知识稍作了解。
【正文】
C#运算符
一元运算符
一元运算符,++、——规则都是一样的。总的回来说,就是用一个操作数就能够进行运算。
举例
int num=5;
num++;
num的值就是6了。
二元运算符
如果说用一个操作数就能运算的叫一元运算符,那么二元运算符就好理解了。用两个操作数就可以运算。例如:*、/、%、+、-、<<、>>、<、<=、>、>=、==、!=、&、^、|、&&、||、=、+=、-=、*=、/=、%=、>>=、<<=、&=、^=、|=。这些就是二元运算符。
所谓二元运算符,就是加法运算符、乘法运算符、关系运算符位、移运算符等等。
三元运算符(条件运算符)
用三个操作数可以运算的就是三元运算符。也叫做条件运算符,如下所示:?: 条件表达式1?表达式2:表达式3,如果是1,就执行2,不是1,就执行3.
怎么用呢?
a=3>4?5:6;输出6
a=3<4?5:6;输出5
逻辑运算符
逻辑运算符就是与或非关系,经过查阅资料。还有逻辑AND运算符、逻辑XOR运算符、逻辑OR运算符。
我们现在学的&&,是条件AND运算符。A&&B,AB的条件都满足下,结果位True,否则为fluse。学的||,是条件OR运算符。A||B,AB的条件都不满足下,结果位fluse,否则为True。
逻辑AND运算符、逻辑XOR运算符、逻辑OR运算符的表达式为,A&B、A^B、A|B。与整数类型和enum 类型一起使用。还有待探索!
运算符拓展
我看了很多关于运算符的资料,以下是这些运算符。
NUll合并运算符
A??B,如果不为Null,则返回A,否则返回B。
Lambda运算符
=> - lambda 声明
类型测试运算符
Is - 类型兼容性。 如果求值后的左操作数可以转换为右操作数中指定的类型(静态类型),则返回 true。
As - 类型转换。 返回左操作数并转换为右操作数中指定的类型(静态类型),但 as 返回 null,其中 (T)x 会引发异常。
算术溢出
算术运算符(+、-、*、/)产生的结果可能会超过所涉数值类型的可能值的范围。
整数算术溢出
整数算术溢出或者引发 OverflowException,或者放弃结果的最高有效位。 整数被零除总是引发 DivideByZeroException。
浮点算术溢出
浮点算术溢出或被零除从不引发异常,因为浮点类型基于 IEEE 754,因此可以表示无穷大和 NaN(非数值)。
小数算术溢出
小数算术溢出总是引发 OverflowException。 小数被零除总是引发 DivideByZeroException。
整数之间转换造成溢出
整型类型之间的转换也会导致溢出(例如,将 long 转换为 int)并受 checked 或 unchecked 执行的限制。 但是,位运算符和移位运算符永远不会导致溢出。
小拓展——convert应用
关于类型转换,我们想到的应该就是convert这个类。Convert类将一个数据类型转换成另一个数据类型。
convert类支持的类型有: Boolean、Char、SByte、Byte、Int16、Int32、Int64、UInt16、UInt32、UInt64、Single、Double、Decimal、DateTime 和 String。
【总结】
先说这么多,接下来会总结流程控制语句!
转载请注明原文地址: https://ju.6miu.com/read-557.html