Next | Program Repair Shop | 46 |
I got the idea that maybe this would be better written with each
So I tried writing the code both ways:
The original:
foreach $filesz (keys %names_by_size) { my $num_files_this_size = scalar (@{$names_by_size{$filesz}}); if ($num_files_this_size < 2) { delete $names_by_size{$filesz}; } else { $filecount += $num_files_this_size; } }
With each:
while (my ($filesz, $files_this_size) = each %names_by_size) { if (@$files_this_size < 2) { delete $names_by_size{$filesz}; } else { $filecount += @$files_this_size; } }
Which do you prefer?
Next | ![]() |
Copyright © 2006 M. J. Dominus |