微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

perl – “map”有什么像“last”吗?

在Perl中,是否可以任意地结束 map执行,例如相当于 last一个循环?

这有点像这样:

map {
    if (test == true) { last; } dosomething
} @myarray

解决方法

不.你不能持续,下一个等等,从地图,grep或排序块,因为 they are not loops.

话虽如此,这个问题的代码片段很差,因为map不能在void context中调用.它们应该用于将一个列表转换为另一个列表.

这是一个更好的方式来写它,如果你真的必须内联它(在ysth的评论修改):

$_ == 10 && last,print for 1..15;  # prints '123456789'

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐