首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Perl中使用&&运算符

如何在Perl中使用&&运算符
EN

Stack Overflow用户
提问于 2015-09-03 13:47:15
回答 2查看 9.2K关注 0票数 2

我是Perl的新手,如果打印语句满足两个条件,我将尝试使用下面的代码来执行它。

代码语言:javascript
复制
if ($ARGV[0] eq "test") && ($ARGV[1] eq "test1"){
print"test and test1 Selected\n"
}

如何调整代码,使其不会抛出任何错误?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-03 14:15:51

if语句的语法为:

代码语言:javascript
复制
if (CONDITION) BLOCK

所以如果你的情况是

代码语言:javascript
复制
($ARGV[0] eq "test") && ($ARGV[1] eq "test1")

然后你就会用

代码语言:javascript
复制
if (($ARGV[0] eq "test") && ($ARGV[1] eq "test1")) { ... }

也就是说,这些括号是不需要的,因为&&就是这样使用的。

代码语言:javascript
复制
if ($ARGV[0] eq "test" && $ARGV[1] eq "test1") { ... }

我不知道为什么另外两个人建议用优先级较低的and来伪装&&。将符号用作分隔符(例如,;{ ... }等)是有原因的,因为它使代码中的边界更容易一目了然,提高了可读性。

因此,到目前为止,最常用的约定是使用orand进行流控制(or dieor nextor return等),并在表达式中使用||&& (正如您所做的那样)。

票数 14
EN

Stack Overflow用户

发布于 2015-09-03 13:49:47

您可以将这些条件放在if-中。

代码语言:javascript
复制
if (($ARGV[0] eq "test") && ($ARGV[1] eq "test1")) {
    print"test and test1 Selected\n"
}

(因此,我对逻辑连接操作符的粗略描述进行了不必要的添加,导致了一些令人困惑的问题,并引起了批评,认为我完全删除了它。)

对于您在这里的问题,我认为简单地使用括号的嵌套使用是重点。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32367829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档