| 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 |