当前位置:网站首页>C#中的&、&&、|、||的区别
C#中的&、&&、|、||的区别
2022-08-08 23:55:00 【无悔青春_j进无止境】
& 运算符既可作为一元运算符也可作为二元运算符。
一元 & 运算符返回操作数的地址:
为整型和 bool 类型预定义了二进制 & 运算符。 对于整型,& 计算操作数的逻辑按位“与”。 对于 bool 操作数,& 计算操作数的逻辑“与”;也就是说,当且仅当两个操作数均为 true 时,结果才为 true。
1.& 运算符计算两个运算符,与第一个操作数的值无关。 例如:
int i = 0;
Console.WriteLine(false & ++i == 1);结果是FALSE.
也可用于二元运算符:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace test23
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(true&true);
Console.WriteLine(true&false);
Console.WriteLine(false&false);
Console.WriteLine("0x{0:x}",0xf8&0x3a);
/*
* 0xf8:1111 1000
* 0x3a:0011 1010
* 0011 1000==0x38 14
*/
Console.ReadKey();
}
}
}
2.| 运算符是为整型和 bool 预定义的。 对于整型, |计算操作数的按位“或”。 对于 bool 操作数, | 计算操作数的逻辑“或”;也就是说,当且仅当两个操作数均为 false 时,结果才为 false。3. &&
条件“与”运算符 (&&) 执行其 bool 操作数的逻辑“与”运算,但仅在必要时才计算第二个操作数。
如果 x是 false, y 不会计算,因为,和操作的结果是 false ,无论 y 的值为什么。 这被称作为“短路”计算。
4. ||
条件或运算符 (||) 执行的逻辑或其 bool 操作数。 如果第一个操作数计算结果为 true,第二个操作数对象不会计算。 如果第一个操作数计算结果为false,第二个运算符确定或表达式整体是否计算结果为 true 或 false。
如果 x 是 true,y 不会计算无论 y,的值,因为或操作是 true。 此概念称为“短路计算”。
& 是做逻辑与运算
比如 1 & 1 = 12 & 1 = 0 将十进制数据转换成二进制数据进行比较 (10 & 01 = 00)
|是做逻辑或运算
1|1 = 1
2 | 1 = 3 (10 | 01 = 11)
>> 是右移位运算 相等于除以2
<< 是左移位,相等于乘以2
逻辑与和逻辑或都是给整数的运算
&和|
都是把左右两边变成二进制,然后逐位进行运算
>>和<<也是变成二进制,然后往左边和右边移位
比如
17和13
17 二进制是 10001
13二进制是 01101
17 & 13 = 10001 & 01101 = 00001 也就是1
17 | 13 = 10001 | 01101 = 11101 也就是 29
17>> 就是10001 右移位 变成 01000 就变成8了
17<< 就是10001 左移位 变成100010 变成34 了
边栏推荐
猜你喜欢

词云简单生成

【深度学习】TensorFlow学习之路三:梯度消失\爆炸及解决办法

第二章 关系数据库概述

Risk Control Modeling 1: Definition of Good and Bad Labels

TensorFlow learning path deep learning 】 【 5: several methods to prevent a fitting and within DNN TensorFlow implementation

360“卸载不下去”引热议 周鸿祎重申是谣言:步骤繁琐出于安全考虑

03 Spark on 读取内部数据分区策略(源码角度分析)

OFDM 十六讲 6 Inter symbol Interference

域前置通信过程和溯源思路

ABP中的数据过滤器
随机推荐
mysql建表常用sql语句
linux环境安装mysql和使用中的常见问题
【瑞吉外卖】day04:员工分页查询、启用/禁用员工账号、编辑员工信息
北斗网络同步时钟与GPS卫星时钟同步设备的区别
【深度学习】TensorFlow学习之路五:DNN防止过拟合的几种方法及TensorFlow实现
深入理解计算系统第三章程序的机器级表达总结
51nod2614 小B爱旅行 (参考范艺杰代码 基本抄袭 太难了)
手机国债账户开户安全吗?
51nod 1706 最短路 + 思维
测试用例的原则、缺陷报告怎么写你都知道吗?
百度地图智能搜索及拖拽画圆
重发布实验
MySQL 原理与优化,Group By 优化 技巧
记录一些 PostgreSQL问题分析思路
并发编程第11篇,线程池的一些常用用法和使用
并发编程第10篇,CountDownLatch(计数器)和Semaphore(信号量)
reits基金是什么意思?安全吗?
HCIP2--HCIA复习
获取当前一周时间 不含当天
Get the current week time excluding the current day