私はPerlを知らないので、友好的な検索エンジンの助けを借りてPerlスクリプトを強化しています。このPerlループの中で条件付きで最後に使用するクリーナーはありますか?
foreach my $element (@array) {
if($costlyCondition) {
$flag = 1;
last;
}
}
私は「最後の」使用するためのよりよい方法は、このようなものであることを知っている:
私は条件が叶うならばフラグを設定しながら、私はループから抜け出す必要があることがわかり
foreach my $element (@array) {
last if ($costlyCondition);
}
もちろん、私は構文的な砂糖を楽しむことができますが、私はループ内にフラグを設定できません。つまり、もう一度$costlyCondition
を評価する必要があります。
これを行うクリーナー方法はありますか?
「if」は実際には1つのステートメントのみです。最初の条件文は、複数の文が1つの条件文に適しています。 –
この場合、ifブロックがより良い選択肢だと思います。ループコントロールの後置条件の通常の引数は、より重要なコードを左に置きます。ループには、終了条件とは異なる複数の終了条件があることを強調します。この場合、いくつかの複合式を使用すると、ループ制御が式の中に埋もれて、一目でわかりにくくなります。 –
@Joel:そうです。私は元のバージョンにとどまります。 – ArjunShankar