C#中感叹号(!) 的作用总结

当在C#中提及感叹号(!)时,通常指的是逻辑非运算符。这个运算符常用于实现反转布尔值。

逻辑非运算符返回一个布尔值(true或false)。如果操作数为true,则该运算符返回false;如果操作数为false,则该运算符返回true。

在C#中,逻辑非运算符主要有以下两种应用:

  1. 运用于空引用类型,表示判定该对象是否为空

在C#中,操作符!被用来判断对象是否为“null”或者“空引用类型”。当操作符!用于空对象时,它会返回一个真值(true),因此,这里使用操作符!可以让我们判断一个对象是否为“null”。

示例:

string str = "";
if (!string.IsNullOrEmpty(str))
{
    // 进行处理的代码
}

可以看到,这里把操作符!用于string对象.IsNullOrEmpty方法的返回值。如果这个方法返回false,那么!操作符把它变成true。因此,如果字符串str不为空,则执行if块中的代码。

  1. 运用于类型布尔变量、普通布尔变量和表达式,表示取反操作

另外一个常见的用法是在布尔值上面运用!操作符,将true变成false,false变成true。

示例:

bool a = true;
bool b = !a;
Console.WriteLine(b); // 输出为false

在上面的示例中,首先声明一个布尔变量a,并把它赋值为true。然后使用!操作符,对a进行逻辑非运算。由于a为true,所以!操作符会把它反转(即变成false),并将结果赋值给布尔变量b。最后,用Console.WriteLine输出b的值,即false。

总之,感叹号(!)在C#语言中主要用来表示逻辑非运算符,其作用是对布尔值进行取反操作,或者在判定空引用类型时判断对象是否为“null”。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#中感叹号(!) 的作用总结 - Python技术站

(0)
上一篇 2023年6月6日
下一篇 2023年6月6日

相关文章

  • C#并发容器之ConcurrentDictionary与普通Dictionary带锁性能详解

    C#并发容器之ConcurrentDictionary与普通Dictionary带锁性能详解 引言 在多线程编程中,确保线程安全是至关重要的。在实现线程安全的过程中,我们可以使用锁、互斥量等同步机制。而在 .NET Framework 4 中,引入了一些并发容器,例如ConcurrentDictionary,可以帮助我们更方便地实现线程安全。那么,在使用Co…

    C# 2023年6月1日
    00
  • C# Stream.Close – 关闭流

    C# 中 Stream.Close 方法主要用于关闭流对象,并释放底层资源,以确保相关资源的可用性。 方法签名 public virtual void Close(); 该方法不接受参数,也不返回任何值。 使用方法 使用 Stream.Close 方法时应该注意以下几点: 该方法会释放所有资源和锁定文件。 如果在流上有未决定的异步操作,该操作可能会失败并引发…

    C# 2023年4月19日
    00
  • C#使用Dictionary拆分字符串与记录log方法

    一、概述 在C#编程过程中,使用Dictionary结构可以方便地将字符串拆分成基本单元,并快速处理。同时记录程序运行过程的log也是开发中非常重要的一项功能。本文将主要介绍如何使用Dictionary拆分字符串,并通过记录log方法实现字符串处理的详细攻略。 二、拆分字符串 在C#中,使用Split方法可以将字符串按照指定的分割符拆分成多个子字符串,同时也…

    C# 2023年5月31日
    00
  • 基于C#实现获取本地磁盘目录

    下面是详细的讲解“基于C#实现获取本地磁盘目录”的完整攻略。 背景介绍 在 C# 开发中,有时需要获取本地磁盘目录的信息,比如磁盘名称、总大小、可用空间等。这些信息可以用来进行磁盘管理和监控,是非常重要的功能。 实现步骤 下面介绍实现步骤: 步骤1:引用命名空间 在 C# 代码中,获取本地磁盘目录需要用到 System.IO 命名空间。因此需要在代码中引用该…

    C# 2023年6月2日
    00
  • 浅谈二叉查找树的集合总结分析

    二叉查找树(Binary Search Tree,BST)是一种常见的数据结构,它是一种有序的树形结构,其中每个节点最多有两个子节点。在二叉查找树中,左子树的所有节点的值都小于根节点的值,右子树的所有节点的值都大于根节点的值。这种有序性质使得二叉查找树非常适合用于实现集合(Set)数据结构。 以下是两个示例,介绍如何使用二叉查找树实现集合: 示例一:使用二叉…

    C# 2023年5月15日
    00
  • Angular4 反向代理Details实践

    Angular是一种流行的Web应用程序框架,它提供了许多功能和工具来帮助开发人员构建高效的Web应用程序。在开发Angular应用程序时,我们可能需要使用反向代理来解决跨域请求的问题。本文将提供详解“Angular4反向代理Details实践”的完整攻略,包括如何配置反向代理、如何在Angular应用程序中使用反向代理等。 配置反向代理 要配置反向代理,我…

    C# 2023年5月15日
    00
  • C#使用日志组件log4net

    让我来为您详细讲解“C#使用日志组件log4net”的完整攻略。 1. 什么是log4net log4net是一个日志记录组件,它为应用程序提供了提供基于框架级的日志记录功能。它允许开发人员在应用程序中记录消息、异常、错误和其它事件,而无需了解记录这些事件的底层细节。log4net支持多种日志记录输出目标,包括文件、数据库、远程服务器等。 2. 安装log4…

    C# 2023年5月15日
    00
  • C#实现的xml操作类完整实例

    下面是详细讲解“C#实现的XML操作类完整实例”的完整攻略。 简介 在C#开发中,我们需要对XML文件进行读取、写入和修改等操作,这时候一款优秀的XML操作类就显得十分重要。本文将介绍一款C#实现的XML操作类的完整实例,包括类的定义、读取XML文件、写入XML文件和修改XML文件等操作。 类的定义 首先,我们需要定义一个XML操作类,这个类需要包含读取、写…

    C# 2023年5月31日
    00
合作推广
合作推广
分享本页
返回顶部