加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何将一个布尔条件结果赋给perl中的标量变量?

发布时间:2020-12-16 06:06:25 所属栏目:大数据 来源:网络整理
导读:我正在执行以下操作,但它无法正常工作: my $enabled = $hash $hash-{'key'} $hash-{'key'}-{'enabled'} $hash-{'key'}-{'active'}; 这是为标量变量赋予布尔值的可接受方式吗? 我的代码以奇怪的方式行为不端,因为它是,我相信这是因为这个任务.我已经验证所
我正在执行以下操作,但它无法正常工作:

my $enabled = $hash && 
                  $hash->{'key'} && 
                  $hash->{'key'}->{'enabled'} && 
                  $hash->{'key'}->{'active'};

这是为标量变量赋予布尔值的可接受方式吗?
我的代码以奇怪的方式行为不端,因为它是,我相信这是因为这个任务.我已经验证所有这些键都存在各个值,并设置为一个值.

附:抱歉是个菜鸟!我用Google搜索约10分钟,无法在任何地方找到答案.

解决方法

Perl布尔运算符如&&,||和,或者不返回布尔值,它们返回其参数之一的值:

say 2 && 3;

输出3.

您可以使用双重否定技巧将其强制为布尔值:

say !!(2 && 3);
# or
say not not 2 && 3;

输出1.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读