C#运算符 内置了丰富的运算符操作类型,使用方便,极大的简化了编码,同时还支持多种运算符重载机制,让自定义的类型也能支持运算符行为。
01、运算符概览
运算符分类 | 描述 |
---|---|
数学运算 | 基础的加减乘除,及++、-- |
赋值运算 | =,及各种复合赋值op= ,x+=20; 等效于x=x+20; |
比较运算 | 比较相等、大小,内置类型大多支持,自定类型需要自己重载运算符才能支持 |
逻辑运算符 | 常用的就是非! 、短路逻辑与&& 、短路逻辑或 ||。 |
位运算 | 二进制位运算,适当使用可极大提高数据处理性能 |
类型相关运算符 | 类型判断is 、类型转换as 、typeof ... |
指针操作运算符 | 指针相关运算符:*、&、-> |
其他运算符 | ^ 、.. 范围运算、nameof 、default (默认值)、await /async ... |
运算符重载 | public static Point operator +(Point p1, Point p2) {} |
隐式转换 | public static implicit operator int(Point p1){} |
显示转换 | public static explicit operator string(Point p){} |