in reply to how to initialize array to null values
This looks very much like something where you should be using a hash rather than parallel arrays. Consider:
use strict; use warnings; my %tasks = ( read => [qw(book novel magazine)], eat => [qw(apple banana)], play => [qw(football tennis)], ); for my $task (sort keys %tasks) { my @objects = @{$tasks{$task}}; print "I can $task a "; print join ', ', @objects[0 .. $#objects - 1]; print " and a $objects[-1]" if @objects > 1; print ".\n"; }
Prints:
I can eat a apple and a banana. I can play a football and a tennis. I can read a book, novel and a magazine.
which shows a few language handling problems, but ought to demonstrate how such code hangs together.
|
|---|