前面几个章节简述了 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. POJ3292(素数筛选)

    Semi-prime H-numbers Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 8706   Accepted: 3 ...

  2. 图解缓存淘汰算法二之LFU

    1.概念分析 LFU(Least Frequently Used)即最近最不常用.从名字上来分析,这是一个基于访问频率的算法.与LRU不同,LRU是基于时间的,会将时间上最不常访问的数据淘汰;LFU为 ...

  3. 在云服务器上体验Docker

    1. 添加Docker repository key sh -c "wget -qO- https://get.docker.io/gpg | apt-key add -" 2. ...

  4. 10-24C#基础--枚举

    一.枚举 1.定义:在程序编写中,枚举同结构体是并列的,位于Class下面:枚举是常量的集合. enum meiju://枚举是常量的集合,一般冒号后面不指定数据类型 2.格式: enum meiju ...

  5. 问题:C#后台获取tr;结果:C# <tr id="a" runat="server"> 怎么在后台用FindControl找到这个tr的id?

    C# <tr id="a" runat="server"> 怎么在后台用FindControl找到这个tr的id? 2013-05-30 10:52 ...

  6. 安装zabbix-agent报错 Error: failure: repodata/primary.xml.gz from zabbix: [Errno 256] No more mirrors to try.

    安装zabbix-agent报错 yum install -y zabbix-agent Loaded plugins: fastestmirror, refresh-packagekit, secu ...

  7. JSP 按钮点击,onclick事件中的AJAX不执行可能的原因

    <button onclick="deleteAccount()"  >删除</button> 缺少了 type="button" &l ...

  8. 错误信息:"OraOLEDB.Oracle" 返回了消息 "ORA-12154: TNS: 无法解析指定的连接标识符

    错误信息:"OraOLEDB.Oracle" 返回了消息 "ORA-12154: TNS: 无法解析指定的连接标识符 链接服务器"NC"的 OLE D ...

  9. css中的hack

    1.什么是CSS hack? CSS hack是通过在CSS样式中加入一些特殊的符号,让不同的浏览器识别不同的符号(什么样的浏览器识别什么样的符号是有标准的,CSS hack就是让你记住这个标准),以 ...

  10. Ajax入门(二)Ajax函数封装

    如果看了的我上一篇博客<Ajax入门(一)从0开始到一次成功的GET请求>的话,肯定知道我们已经完成了一个简单的get请求函数了.如下: 1234567891011121314151617 ...