关系运算符,也称布尔比较运算符

注:var1为bool类型,var2与var3可以是其它类型。【数据类型看下一节】

运算符 类别 示例表达式 结果说明
==     二元     var1=var2==var3 如果var2等于var3,var1值为true,否则为false
!= 二元   var1=var2!=var3   如果var2不等于var3,var值为false,否则为true
< 二元 var1=var2<var3 如果var2小于var3,var1值为true,否则为false
> 二元   var1=var2>var3 如果var2大于var3,var1值为true,否则为false
<= 二元 var1=var2<=var3 如果var2小于等于var3,var1的值为true,否则为false
>= 二元 var1=var2>=var3 如果var2大于等于var3,var1的值为true,否则为false
! 一元 var1!var2 如果var2为false,var1的值为true,否则为false(逻辑非)
& 二元   var1=var2&var3 如果var2与var3都为true,var1的值为true,否则为false(逻辑与)
| 二元 var1=var2|var3 如果var2或var3其它一个为true(或者二个都为true),var1的值为true,否则为false(逻辑或)
^ 二元 var1=var2^var3 如果var2或var3其它一个为true,var1的值为true,否则为false(逻辑异或)
&& 二元 var1=var2&&var3 如果var2与var3都为true,var1的值为true,否则为false(逻辑与)
|| 二元 var1=var2||var3 如果var2或var3其它一个为true(或者二个都为true),var1的值为true,否则为false(逻辑或)

为什么有了:‘&’与‘&&’ 及 ‘|’与 ‘||’,功能都一样,为什么还需要?一个重要区别:'&&','||'性能比较好。使用 '&'及‘|’运算符,需要考虑var2与var3二边的操作数。使用'&&'运算符,如果第一个操作数为false,即不需要考虑第二个操作数的值,第二个操作数的值是什么,var1结果为:false。同样,'||'运算符返回true,如果第一个操作数为true,无需考虑第二个操作数的值。

布尔赋值运算符

运算符 类别 示例表达式 结果说明
&=     二元     var1&=var2   var1的值为var1&var2的结果
|= 二元 var1|=var2 var1的值为var1|var2的结果
^= 二元 var1^=var2 var1的值var1^var2的结果

位移运算符

运算符 类别 示例表达式 结果
>>   二元   var1=var2>>var3   把var2的二进制值向右移动var3位,就得到var1的值
<< 二元 var1=var2<<var3 把var2的二进制值向左移动var3位,就得到var1的值

位移赋值运算符

运算符 类别 示例表达式 结果
>>=   一元   var1>>=var2   把var1的二进制值向右移动var2位,就得到:var1的新值
<<= 一元 var1<<=var2 把var1的二进制值向左移动var2位,就得到:var1的新值
       

C#入门笔记3 表达式及运算符2的更多相关文章

  1. C#入门笔记3 表达式及运算符

    C#表达式 表达式,把变量.字面值与运算符组合起来,就创建表达式,是计算的基本构件.字面值:是源代码中键入的数字.字符串,表示指定类型的值.常用有几种:整数.实数.字符.字符串. 整数字面量[也能使用 ...

  2. Python入门笔记(12):表达式和语句

    一.Python语句 if语句.else语句.elif语句.条件表达式.while语句.for语句.break语句.continue语句.pass语句.Iterators(迭代器).列表解析 二.常用 ...

  3. C Primer Plus学习笔记(四)- 运算符、表达式和语句

    基本运算符 赋值运算符:= 在C语言中,=不是“相等”,而是赋值运算符,把左边的值赋给右边的变量 a = 2018; //把值2018赋给变量a 赋值表达式语句的目的是把值储存到内存位置上,用于储存值 ...

  4. Ruby入门笔记

    Ruby入门笔记 一切皆为对象 “Hello”.length 方法 定义:def开头 end结尾 命名一般采用下划线分隔单词

  5. React.js入门笔记

    # React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...

  6. MySQL入门笔记(一)

    一.数据类型 1. 整型 2. 浮点型 3. 字符型 4. 日期时间型 二.数据库操作 1. 创建库 CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_nam ...

  7. MySQL入门笔记(二)

    MySQL的数据类型.数据库操作.针对单表的操作以及简单的记录操作可参考:MySQL入门笔记(一) 五.子查询   子查询可简单地理解为查询中的查询,即子查询外部必然还有一层查询,并且这里的查询并非仅 ...

  8. 「Android 开发」入门笔记

    「Android 开发」入门笔记(界面编程篇) ------每日摘要------ DAY-1: 学习笔记: Android应用结构分析 界面编程与视图(View)组件 布局管理器 问题整理: Andr ...

  9. awk 新手入门笔记

    转自:http://www.habadog.com/2011/05/22/awk-freshman-handbook/ awk新手入门笔记 @作者 : habadog@邮箱 : habadog1203 ...

随机推荐

  1. 浏览器,tab页显示隐藏的事件监听--页面可见性

    //监听浏览器tab切换,以便在tab切换之后,页面隐藏的时候,把弹幕停止 document.addEventListener('webkitvisibilitychange', function() ...

  2. zk 10之:Curator之三:服务的注册及发现

    Service Discovery 我们通常在调用服务的时候,需要知道服务的地址,端口,或者其他一些信息,通常情况下,我们是把他们写到程序里面,但是随着服务越来越多,维护起来也越来越费劲,更重要的是, ...

  3. Iptables防火墙面试题

    Iptables防火墙面试题 第1章 (一)基础口试题 1.1 详述 iptales 工作流程以及规则过滤顺序? 1.防火墙是一层层过滤的.实际是按照配置规则的顺序从上到下,从前到后进行过滤的. 2. ...

  4. strTemp.Format ("%.*lf",3,600.0);

    CString strTemp; strTemp.Format ("%.*lf",3,600.0); 这句话的含义?求指教   优质解答 这就是一个格式化输出,分号之前的CStri ...

  5. CodeForces 1131G. Most Dangerous Shark

    题目简述:从左到右依次有$n \leq 10^7$个Domino骨牌,高度为$h_i$,手动推倒他的花费为$c_i$.每个骨牌之间的距离为$1$.一个骨牌可以被向左或者向右推倒.当第$i$个骨牌被推倒 ...

  6. db2 command line notes

    db2ilist - list instances db2 attach to <instance> user <username> using <password> ...

  7. 模块 DLL C:\WINDOWS\system32\inetsrv\aspnetcore.dll 未能加载。返回的数据为错误信息。

    更新了win10的版本后,就启动原来的iis发布的程序 程序池就自动关闭.后来 启动网站 iis程序池自动关闭. 在为应用程序池“.NET v4.5”提供服务的工作进程“21908”中,协议“http ...

  8. 交互原型设计软件axure rp学习之路(三)

    (三)Axure rp元件的触发事件 l  OnClick(点击时): 鼠标点击事件,除了动态面板的所有的其他元件的点击时触发.比如点击按钮. l  OnMouseEnter(鼠标移入时): 鼠标进入 ...

  9. 938. Range Sum of BST

    Given the root node of a binary search tree, return the sum of values of all nodes with value betwee ...

  10. ZOJ2898【折半搜索】

    题意: 给出一系列值和对应的陷阱,对于陷阱如果存在两个就抵消,求价值最大. 思路: 折半枚举,利用异或 #include <bits/stdc++.h> using namespace s ...