zoukankan      html  css  js  c++  java
  • 0 or 1,1 and 0

    最近小编遇到很头疼的的一件事

    就是以下这几道运算题 ,以下结果是小编经过大量的运算得出的

    一.或运算

    1.0 or 1

      结果为:1

    2.1 or 0

      结果为:1

    3.1 or 2

      结果为:1

    4.2 or 1

      结果为:2

    5.0 or []

      结果为:[]

    6.[] or 0

      结果为:0

    二.与运算

    1.0 and 1

      结果为:0

    2.1 and 0

      结果为:0

    3.1 and 2

      结果为:2

    4.2 and 1

      结果为:1

    5.' ' and 0

      结果为:' '

    6.0 and ' ' 

      结果为:0

    三.混合运算

    1.1 < ( 2 == 2)

      结果为:False   这道题就不用多说了,2==2为True,True换成数字为1,1<1明显为Flase

    2.1 < 2 == 2

      结果为:True 

       按照正常思路,比较运算优先级比等于优先级高,所以这道题先算1 < 2 为True,True为1,1不等于2,所以为Flase

      但是,答案明明就是True,实际上这道题是这样算的:

      1 < 2 and 2 == 2  这样一转变,是不是立马就明白了 

      因为逻辑运算优先级低,所以最后运算为:True and True

    总结:

      1.or:或运算的两边,有真则真;若都为真,则选前者;若都为假,则选后者;

      2.and:与运算的两边,有假则假;若都为真,则选后者;若都为假,则选前者;

      3.混合运算时,应当考虑运算符优先级的问题,当有括号时,先算括号内的运算

  • 相关阅读:
    kickstart-G
    some advice in work
    Java Applet:练习TextField类和TextArea类的文本事件
    jquery带下拉菜单和焦点图
    炫酷的CSS3抖动样式:CSS Shake
    CSS: iPhone Custom CSS
    css sprite技巧详解
    CSS缎带效果
    css 采集下载
    CSS控制表格嵌套
  • 原文地址:https://www.cnblogs.com/mswei/p/9286833.html
Copyright © 2011-2022 走看看