盘点C#中感叹号"!"的作用
在C#编程语言中,感叹号"!"是一个常见的符号,具有多种用途和作用。小编在本文将带大家探讨感叹号在C#中的不同用法,帮助程序员更好地理解和运用这个小而重要的符号。
1、逻辑非:
感叹号用作逻辑非运算符,可以对布尔值进行取反操作。通过在布尔表达式前面添加感叹号,我们可以将一个布尔值从"true"变为"false",或从"false"变为"true"。逻辑非常常用于条件判断和逻辑运算中。
bool isTrue = true; bool isFalse = !isTrue; // isFalse的值为false if(!isFalse){ dosomesting();//这里就是非False 执行,也就条件是true时执行 }
2、关系运算符:
!= 与等号共同组成关系运算符,检查两个操作数的值是否相等。
a!=b
3、非空断言:
在C# 8.0及更高版本中,感叹号可以用于非空断言。当我们声明一个可能为空的引用类型时,在类型后面添加问号("?")表示可为空。而感叹号用于标记不为空的断言,告诉编译器在此处不要进行空引用检查。这在我们确定某个引用不会为空时非常有用。
string? nullableString = null; string nonNullableString = nullableString!; // 非空断言,告诉编译器不要检查nullableString是否为null
4、 可空类型的解引用:
同上条一样在C# 8.0及更高版本中,感叹号还可以用于可空类型的解引用操作。可空类型是指允许变量存储空值的类型,通过在变量后面添加问号("?")来表示。当我们需要从可空类型中获取实际值时,可以使用感叹号进行解引用操作,以确保获取到的值不为空。
int? nullableInt = 10; int nonNullableInt = nullableInt!.Value; // 解引用操作,获取nullableInt的值,这里必须确保有值才行
结语
本文讲述了在C#中感叹号("!")具有多种作用和用法。通过熟练掌握感叹号的各种用法,程序员可以更好地利用C#语言的特性,编写出更清晰、更健的C#代码。希望本文对你有所收获,你对C#中感叹号("!")有什么看法,欢迎留言讨论。
参考:.NET官方文档
本站大部分文章、数据、图片均来自互联网,一切版权均归源网站或源作者所有。
如果侵犯了您的权益请来信告知我们删除。邮箱:1451803763@qq.com