前面几个章节简述了 C#中得常用得算术运算符。这一章节说布尔值与其布尔运算符。

布尔值在c#中表示方式是 bool类型,这个类型可以储存两个值,true或者false,或者真或者假,可以说0或者1.

布尔运算在c#中主要用到的地方是,比较。 所以我们先说一下布尔比较运算符,也成关系运算符,后者名称较为常用。如图所示

假设变量 A 的值为 10,变量 B 的值为 20,则:

运算符 类别 描述 实例
== 二元 检查两个操作数的值是否相等,如果相等则条件为真。 (A == B) 不为真。
!= 二元 检查两个操作数的值是否相等,如果不相等则条件为真。 (A != B) 为真。
> 二元 检查左操作数的值是否大于右操作数的值,如果是则条件为真。 (A > B) 不为真。
< 二元 检查左操作数的值是否小于右操作数的值,如果是则条件为真。 (A < B) 为真。
>= 二元 检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。 (A >= B) 不为真。
<= 二元 检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。 (A <= B) 为真。

处理常用得布尔运算时候,除了关系运算符,也会用上逻辑运算。下表

逻辑运算符

下表显示了 C# 支持的所有逻辑运算符。假设变量 A 为布尔值 true,变量 B 为布尔值 false,则:

运算符 类别 描述 实例
& 二元 称为逻辑与运算符。如果两个操作数都非零,则条件为真。 (A &B) 为假。
| 二元 称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。 (A |B) 为真。
! 一元 称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。 !(A & B) 为真。
^ 二元 称为逻辑异或。两个操作数任意一个非零或者为假,则条件为真 A^B 为真
&& 二元 称为逻辑与运算符。如果两个操作数都非零,则条件为真。 (A && B) 为假。
|| 二元 称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。 (A || B) 为真。

表中,&和&&,|和||得结果是一样得,名字都是一样得,但是确实单独列出来的,至于有什么不同,就是后者比前者的效果要好,&&得效果就要比&得效果要好

下面这个列表得运算方式有两种,一种是操作数是布尔值时,另外一种是位移运算。先说布尔值时运算  A=true B=false

运算符 描述 实例
&=   A&=B 相当于 A=A&B A=Fasle
^=  A^=B 相当于 A=A^B A=True
|=  A|=B 相当于 A=A|B A=True

至于怎么理解是这样的,A&=B,相当于A=A&B,是这样解释得,当操作数是布尔值时,按照逻辑与的方式运算,并返回运算的值【布尔值的运算只有两种,True或者False】剩下两种均可按照这种方式一样运算的,当是操作数是别的时候,则按照位移运算。

正经学C#_布尔运算[布尔值与其布尔运算符]:《c#入门经典》的更多相关文章

  1. 正经学C#_循环[do while,while,for]:[c#入门经典]

    在c#中循环语句总共三种,do...while ,while,for这三种语句. 循环语句,是为了解决一些繁琐的计算.比如输出0-10这10个数字. 在不循环的情况下你可以能这么写 Console.W ...

  2. 正经学C#_介绍与其编写基础:《c#入门经典》

    本文所讲内容,均可在<c#入门经典>中可以查询.如有错误,敬请指出.谢谢! C#:全称C Shar.是微软.Net Framework平台下最为主要的客户语言之一.个人理解,c#是微软最为 ...

  3. 正经学C#_变量与其数据类型:《c#入门经典》

    这一篇总结以下变量与其数据类型. 变量:在c#中指 某一个值或者数据存储在变量中,并且可以取出或者查看.变量不仅仅是一种,也有很多种,细分而言就是类型.泛指就是变量.如果是要是使用变量就要 声明变量, ...

  4. 正经学C#_位移与其位移运算符[c#入门经典]

    在c#入门经典一书中,最为糟糕的一节就是位移了,完全没有讲明白,也没有说全,似乎只是轻轻点了一下何为位移,带了两次原码和补码,完全不理会是否明白不明白.这一点这本书很差.因为此书说了,在大多数应用开发 ...

  5. 布尔值与比较运算符"=="

    $man = "男";$flag = $man == "男"; //双等号是比较运算符,返回布尔值,成立则返1赋给$flag 不成立返回0,0即为nullech ...

  6. 正经学C#_判断[IF语句]:[c#入门经典]

    判断语句几乎是最为常用的语句之一,是最有效的. 先说IF语句,IF语句也是属于分支的一种,用来控制流程的. IF的语句是这样的 IF(xxx 条件) { //代码块 } ,b; ) { b=a--; ...

  7. 正经学C#_变量与其转换:《c#入门经典》

    上一节上了变量.末尾简单了说了下 命名方式,声明变量. 命名方式在C#,或者任何语言都是非常重要的一门学问.值得去深入思考一下.变量名的优化与其工作效率的提升,有很多大的关系的. 声明变量,上节介绍了 ...

  8. 正经学C#_表达式与其运算符[算术运算符]:《c#入门经典》

    表达式:正如字面意义,它是通过算术运算符来进行运算的数学公式.表达式的意义我们都是很明白的,大白话就是一个公式嘛.不是很难懂. 表达式不是一个单独的存在,必然有操作数或者操作符的.在c#中有操作符有很 ...

  9. 正经学C#_委托

    以前不会,甚至连想去学都没想.啧啧啧,我是何等朽木啊. 我先不说其中理念,或者原理,咱就先说最简单的用法.怎么去使用委托. 委托 Delegate 使用委托,就要先定义一个委托.定义一个委托就要先声明 ...

随机推荐

  1. UML解析

    1.1 UML基础知识扫盲 UML这三个字母的全称是Unified Modeling Language,直接翻译就是统一建模语言,简单地说就是一种有特殊用途的语言. 你可能会问:这明明是一种图形,为什 ...

  2. pushd,popd,dirs,cd -让切换目录更方便

    与linux cd命令相似,用pushd实现在不同目录间切换 在命令行模式下,当你工作在不同目录中,你将发现你有很多时间都浪费在重复输入上如果这些目录不在同一个根目录中,你不得不在转换时输入完整的路径 ...

  3. 使用Spring AMQP开发消费者应用

    前一篇中我们介绍了使用RabbitMQ Java Client访问RabbitMQ的方法.但是使用这种方式访问RabbitMQ,开发者在程序中需要自己管理Connection,Channel对象,Co ...

  4. #define和const的区别

    下面使用#define和const定义常量: #define n_define 10 int main(int argc, char* argv[],int _version) { ; int *p= ...

  5. c# 几种singleton 实现

    http://csharpindepth.com/Articles/General/Singleton.aspx#introduction 4th在线看 https://www.manning.com ...

  6. 开发环境入门 linux基础 (部分)while for 函数 计划任务

    while循环 while do 动作 done 需要无限循环时我们会选择while : echo -e 格式处理,将\n的意义不变. exit 指退出执行程序 break 指跳出本层循环 conti ...

  7. Celery-4.1 用户指南: Application(应用)

    Application Celery 库在使用之前必须初始化,一个celery实例被称为一个应用(或者缩写 app). Celery 应用是线程安全的,所以多个不同配置.不同组件.不同任务的 应用可以 ...

  8. 部署和调优 1.5 vsftp部署和优化-1

    系统自带的ftp服务软件.vsftpd 安装vsftpd yum install -y vsftpd 启动vsftpd /etc/init.d/vsftpd start 如果启动失败,可能是端口被占用 ...

  9. Xshell的简单使用

    1.下载并安装 Xshell 4打开后如下图所示,会出现一个界面框,这个界面框类似于DOS的界面,需要操控远程的主机,都是通过这个界面进行操作. 2在这个界面左上角的位置有一个文件按钮,点击这个按钮. ...

  10. python+requests+excel 接口测试

    1.EXCEL文件接口保存方式,如图. 2.然后就是读取EXCEL文件中的数据方法,如下: import xlrd class readExcel(object): def __init__(self ...