zoukankan      html  css  js  c++  java
  • 逻辑运算(&、|、^、~)

    “&”(位与)运算符 

    例如:27&5    //1即00001

    11011

    00101

    ————

    00001

    1与1为1,1与0为0,0与1为0,0与0为0

    将十进制转为二进制再进行计算

    典型案例:判断奇偶

    js中:

    var n = 3;

    n&1 //1

    console.log(n & 1 ? "n是奇数" : "n是偶数")

    当n为奇数时返回1,当n为偶数时返回0

    “|”(位或)运算符

    例如:27&5    //31即11111

    11011

    00101

    ————

    11111

    1或1为1,1或0为1,0或1为1,0或0为0

    运用案例 取整

    var n1 = 1.79
    var n2 = 30.3
    var n = n1 | 0 //1
    var 2 = n2 | 0 //30

    “^”(异或)运算符

    例如:27^5  //30

    11011

    00101

    ————

    11110

    1异或1为0,1异或0为1,0异或1为1,0异或0为0

    27^11 //16

    11011

    01011

    ————

    10000

    “~”运算符

    • “~”(位非) -- 运算 27~5
    第一个数的位值第一个数的位值运算结果运算过程
    1 0 0 1位非0=1
    1 0 0 1位非0=1
    0 1 0 0位非1=1
    1 0 0 1位非0=1
    1 1 1 1位非1=0

    结果为二进制11110转为10进制为30

    • 运用案例 直接取整 字符串数字取整
    var n1 = 1.79
    var n2 = "30.3”
    var n = ~~n1 //1
    var 2 = ~~n2 //30
     
    踩过这个坑,还有下一个坑等着你,这一路就是给自己填坑,坑填多了,也就习惯了,直到这一路平坦了,也就无怨无悔了。
  • 相关阅读:
    #256 (Div. 2)A. Rewards
    1113 矩阵快速幂
    1108 距离之和最小V2
    1287 加农炮
    1191 消灭兔子
    1051 最大子矩阵
    1086 背包
    1105 第K大的数
    2016 CCPC 网络赛 B 高斯消元 C 树形dp(待补) G 状压dp+容斥(待补) H 计算几何
    Educational Codeforces Round 18 C dp,思维 D lowbit,思维
  • 原文地址:https://www.cnblogs.com/xiaofeilin/p/14789947.html
Copyright © 2011-2022 走看看