use strict; use warnings; my %spelling_of = ( 1 => 'one', 2 => 'two', 3 => 'three', ); my @integers = (1, 2); my @spellings = (); foreach my $integer (@integers) { my $spelling = $spelling_of{ $integer }; push @spellings, (defined( $spelling ) ? $spelling : q(?)); } printf qq(%s => %s\n), join( q(, ), @integers), join( q(, ), @spellings), ; @integers = (3, 4, 5); @spellings = (); my $spelling_href = \%spelling_of; foreach my $integer (@integers) { my $spelling = $spelling_href->{ $integer }; push @spellings, (defined( $spelling ) ? $spelling : q(?)); } printf qq(%s => %s\n), join( q(, ), @integers), join( q(, ), @spellings), ; __END__