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

在Perl中,是否适合在void context中使用map而不是foreach循环?

发布时间:2020-12-15 21:11:41 所属栏目:大数据 来源:网络整理
导读:在Perl中,如果你有这样的循环: foreach (@items) { perform_action($_);} 你可以用void context中的map来替换它: map { perform_action($_)} @items; 做什么有什么好处吗?它是否具有性能影响,因为Perl认为它必须保存结果?改善/改善可读性吗? 解决方法
在Perl中,如果你有这样的循环:
foreach (@items) {
    perform_action($_);
}

你可以用void context中的map来替换它:

map {
    perform_action($_)
} @items;

做什么有什么好处吗?它是否具有性能影响,因为Perl认为它必须保存结果?改善/改善可读性吗?

解决方法

从Perl 5.8.1开始,在void语境中的映射不是很贵:

map in void context is no longer
expensive. map is now context aware,
and will not construct a list if
called in void context.

但后缀的形式可能更可读:

perform_action($_) for @items;

(编辑:李大同)

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

    推荐文章
      热点阅读