LogicalOperators:我们何时使用运算符OR,何时使用||

Sam*_*ath 3 perl

我正在使用Perl编写一个小脚本,我很困惑哪个逻辑运算符必须用于比较字符串

示例代码:

if (($app eq "appname1")OR($app eq "appname2")OR($app eq "appname3"))
Run Code Online (Sandbox Code Playgroud)

我必须使用OR(或)||

Dav*_*man 6

一般的经验法则往往是:

  • 使用||布尔操作,如合并if ($app eq "appname1" || $app eq "appname2" || $app eq "appname3") { ... }
  • 使用or流量控制,如open my $fh, '<', $filename or die "Open failed: $!"
  • 如果有疑问或者您认为结果结构可能对读者不清楚(包括您自己在六个月内),请使用括号