本篇内容介绍了“C#操作符的分类及用法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
算术: + - * / %
逻辑: & | ^ ~ && || !
字符串连接: +
自加, 自减: ++ --
移位:<< >>
比较: == != < ><= >=
赋值: = += -= *= /= %= &= |= ^= <<= >>=
取指: []
类型: sizeof is typeof as
溢出异常: checked unchecked
Null coalescing operator: ??
◆C# 操作符之is
检查当前的对象是否兼容要检查的类型,即是否是这个类型或是否继承自这个类型
int i = 10; if (i is object) { Console.WriteLine(“i is an object”); }
◆C# 操作符之as
显式类型转化,如果类型不兼容,将返回null
object o1 = “Some String”; object o2 = 5; string s1 = o1 as string; // s1 = “Some String” string s2 = o2 as string; // s2 = null
typeof
返回System.Type类型
◆C# 操作符之Nullable Types and Operators:?
在C#里一个值类型的变量不可能是Null的,他包含了一个值类型的类型本身。这就是为什么我们管值类型叫做值类型。
但是很多情况下会有问题。可以定义一个列的数据类型是32bit的整型数而对应FCL中的Int32类型。但是,这一列在数
据库中暗示着可能为空,就意味着这一列的数据为空是可以接受的。但是使用.NET Framework 来操作数据库中的数据
是很困难的因为CLR不允许int32 的值为空的这一种表现形式。
为了改进这个形式,微软增加了一个Nullable类型的变量在CLR中。
Int32? a = 5; Int32? b = null; Int32? c = (Int32)a; Double? d = 5; Double? e = b; a++;//a = 6 b = -b;//b = null a = a + 3; // a = 9 b = b * 3; // b = null;
对于(+ ++ = == ! ~) 一元的 如果开始null,结果还是null
(+ ++ = == ! ~) 一元的 如果开始null,结果还是null
(+ - * / % & | ^ << >>) 二元的,一个是null,另一个也是null
( == !=). =运算符,如果操作数都是null的话,那么他们相等。如果一个是null,那么不想等。如果都不是null,那么比较数值大小再返回是否相等。
(< > <= >=)比较运算符,如果一个是null,返回false。如果都不是null,那么比较数值大小。再返回。
◆C# 操作符之??
需要两个操作数。如果左面的操作数不为null,那么返回左面的操作数。如果左边的操作符为空的话,那么返回右边的操作符.
??操作很方便,可以用来设置变量的初始值。
Int32? b = null; Int32? x = b ?? 123;
“C#操作符的分类及用法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。