正经学C#_布尔运算[布尔值与其布尔运算符]:《c#入门经典》
前面几个章节简述了 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#入门经典》的更多相关文章
- 正经学C#_循环[do while,while,for]:[c#入门经典]
在c#中循环语句总共三种,do...while ,while,for这三种语句. 循环语句,是为了解决一些繁琐的计算.比如输出0-10这10个数字. 在不循环的情况下你可以能这么写 Console.W ...
- 正经学C#_介绍与其编写基础:《c#入门经典》
本文所讲内容,均可在<c#入门经典>中可以查询.如有错误,敬请指出.谢谢! C#:全称C Shar.是微软.Net Framework平台下最为主要的客户语言之一.个人理解,c#是微软最为 ...
- 正经学C#_变量与其数据类型:《c#入门经典》
这一篇总结以下变量与其数据类型. 变量:在c#中指 某一个值或者数据存储在变量中,并且可以取出或者查看.变量不仅仅是一种,也有很多种,细分而言就是类型.泛指就是变量.如果是要是使用变量就要 声明变量, ...
- 正经学C#_位移与其位移运算符[c#入门经典]
在c#入门经典一书中,最为糟糕的一节就是位移了,完全没有讲明白,也没有说全,似乎只是轻轻点了一下何为位移,带了两次原码和补码,完全不理会是否明白不明白.这一点这本书很差.因为此书说了,在大多数应用开发 ...
- 布尔值与比较运算符"=="
$man = "男";$flag = $man == "男"; //双等号是比较运算符,返回布尔值,成立则返1赋给$flag 不成立返回0,0即为nullech ...
- 正经学C#_判断[IF语句]:[c#入门经典]
判断语句几乎是最为常用的语句之一,是最有效的. 先说IF语句,IF语句也是属于分支的一种,用来控制流程的. IF的语句是这样的 IF(xxx 条件) { //代码块 } ,b; ) { b=a--; ...
- 正经学C#_变量与其转换:《c#入门经典》
上一节上了变量.末尾简单了说了下 命名方式,声明变量. 命名方式在C#,或者任何语言都是非常重要的一门学问.值得去深入思考一下.变量名的优化与其工作效率的提升,有很多大的关系的. 声明变量,上节介绍了 ...
- 正经学C#_表达式与其运算符[算术运算符]:《c#入门经典》
表达式:正如字面意义,它是通过算术运算符来进行运算的数学公式.表达式的意义我们都是很明白的,大白话就是一个公式嘛.不是很难懂. 表达式不是一个单独的存在,必然有操作数或者操作符的.在c#中有操作符有很 ...
- 正经学C#_委托
以前不会,甚至连想去学都没想.啧啧啧,我是何等朽木啊. 我先不说其中理念,或者原理,咱就先说最简单的用法.怎么去使用委托. 委托 Delegate 使用委托,就要先定义一个委托.定义一个委托就要先声明 ...
随机推荐
- 四、Jmeter--参数化
一.CSV 参数化 1.我们做性能测试需要并发多个用户,为了真实模拟用户行为,我们需要模拟多个不同的用户登录,这是我们就需要进行参数化.这里我们选择比较常用的参数化方法-CSV Data Set Co ...
- Ubuntu 16.04安装Elasticsearch,Logstash和Kibana(ELK)Filebeat
https://www.howtoing.com/how-to-install-elasticsearch-logstash-and-kibana-elk-stack-on-ubuntu-16-04 ...
- 证书脚本--生成csr,key
#!/bin/sh # this script can make certificate of each line in file you point which one! if [ $# -ne 1 ...
- python sentence
1.while for 增加了循环正常结束后执行的else代码块. 2.Objects are mutable 3.import copy p1 = Point() p2=copy.copy(p1) ...
- sleep 和 usleep的实现方法
一.sleep 和 usleep 1.不属于系统调用,是glibc 库函数实现的: 2.glibc函数库中通过调用内核的nanosleep实现的: 3.内核nanosleep通过调用 hrtimer_ ...
- sql server将字符串转换为 uniqueidentifier 时失败
sql server查询中出现 将字符串转换为 uniqueidentifier 时失败异常 原因为id设置为uniqueidentifier 字段,在where查询时需要做转换cast(id as ...
- Oracle RMAN 学习:恢复
Oracle RMAN 学习:恢复 6 rman恢复 Rman中的恢复对应restore,recover Restore,数据修复,利用备份集的数据文件来替换已损坏的数据文件或将其恢复到另外一个位置, ...
- 人脸识别FaceNet+TensorFlow
一.本文目标 利用facenet源码实现从摄像头读取视频,实时检测并识别视频中的人脸.换句话说:把facenet源码中contributed目录下的real_time_face_recognition ...
- Java 的编译和运行机制
创建一个 名为 test.java 的 Java 源文件 源代码: class Hello{ public static void main(String[] args) { System.out.p ...
- AngularJS入门之如何快速上手
概述: AngularJS(ng)是一个纯JS框架,AngularJS易于构建CRUD应用(CRUD意思是增删改查) 适用于以数据操作为主的SPA(Single Page Application) ...