代码之家  ›  专栏  ›  技术社区  ›  jeffreyveon

Erlang复合布尔表达式

  •  4
  • jeffreyveon  · 技术社区  · 15 年前

    我阅读了有关使用的文档 and , or

    X = 15,
    Y = 20,
    X==15 and Y==20.
    

    我希望在终端中出现“true”,但我得到了“syntax error before==”。

    4 回复  |  直到 5 年前
        1
  •  10
  •   jldupont    15 年前

    尝试:

    X = 15.
    Y = 20.
    (X==15) and (Y==20).
    
        2
  •  8
  •   cthulahoops    15 年前

    您可能不想使用和。和有两个问题,首先,正如你所注意到的,它的优先级很奇怪,其次,它没有短路第二个参数。

    1> false and exit(oops).
    ** exception exit: oops
    2> false andalso exit(oops).
    false
    

    顺便说一句,orelse相当于or。

        3
  •  5
  •   markmywords    15 年前

    没有支架,你也可以这样做

    X = 15.
    Y = 20.
    X == 15 andalso Y == 20.