在Perl中使用带有while循环的continue块是否有优势?
发布时间:2020-12-16 06:26:49 所属栏目:大数据 来源:网络整理
导读:语法1: while {#some code }continue {#some other code } 语法2: while {#some code #some other code} SYNTAX 1是否比SYNTAX 2有任何优势?假设“某些代码”和“其他代码”在两种语法中保持相同的行集.或者它只有两种不同的样式没有编码优势. 解决方法
语法1:
while { #some code } continue { #some other code } 语法2: while { #some code #some other code } SYNTAX 1是否比SYNTAX 2有任何优势?假设“某些代码”和“其他代码”在两种语法中保持相同的行集.或者它只有两种不同的样式没有编码优势. 解决方法
当您从循环中间调用next时,continue块会执行,因此它提供了一种在迭代之间执行某些公共代码的方法,而不管每次迭代的执行路径如何.
相比 my $last_item; for my $item (@list) { if ($last_item eq $item) { do_something(); $last_item = $item; next; } if (condition2($item,$last_item)) { $last_item = $item; next; } do_something_else(); $last_item = $item; } 同 my $last_item; for my $item (@list) { if ($last_item eq $item) { do_something(); next; } if (condition2($item,$last_item)) { next; } do_something_else(); } continue { $last_item = $item; } 在野外继续的一些例子:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |