了解什么时候&&操作员短路

时间:2013-05-30 19:30:58

标签: r short-circuiting

也许我错过了一些明显的东西。

在R中,TRUE && NA评估为NA。这对我来说没有意义,因为&&应该从左到右进行评估,并在其中一个条件成立时立即停止。

1 个答案:

答案 0 :(得分:17)

  

这对我来说没有意义,因为&&应评估左至   对,并在其中一个条件成立时立即停止。

这是错误的。您正在将&&||混合:

  • TRUE && FALSE给出FALSE
    • &安培;&安培;要求两个条件都为TRUE
    • &&将在FALSE上短路
  • TRUE || FALSE给出TRUE
    • ||要求单个条件为TRUE
    • ||将在TRUE上短路

此外,

TRUE || NA 

给出

TRUE