Lists, Arrays, and Hashes
Array Append
Push appends a value to the end of an array.
push
The `push` function adds one or more values after the current last array element.
Array Append
array_append.pl
Replay: real traced execution (multi-file project)
use strict;
use warnings;
my @fruits = ("apple", "pear");
my $extra = "plum";
push @fruits, $extra;
my $joined = join(",", @fruits);
my $last = $fruits[-1];
print "extra=$extra\n";
print "joined=$joined\n";
print "last=$last\n";
use strict;
use warnings;
my @fruits = ("apple", "pear");
my $extra = "kiwi";
push @fruits, $extra;
my $joined = join(",", @fruits);
my $last = $fruits[-1];
print "extra=$extra\n";
print "joined=$joined\n";
print "last=$last\n";
use strict;
use warnings;
my @fruits = ("apple", "pear");
my $extra = "mango";
push @fruits, $extra;
my $joined = join(",", @fruits);
my $last = $fruits[-1];
print "extra=$extra\n";
print "joined=$joined\n";
print "last=$last\n";
@fruits ← 2, $extra ← plum, $joined ← apple,pear,plum, $last ← plum
4my @fruits→ 2 = ("apple", "pear");5my $extra→ plum = "plum"; #@extra="kiwi", "mango"6push @fruits→ 3, $extraplum;7my $joined→ apple,pear,plum = join(",", @fruits3);8my $last→ plum = $fruits[-1]plum;910print "extra=$extraplum\n";11print "joined=$joinedapple,pear,plum\n";12print "last=$lastplum\n";outputextra=plum joined=apple,pear,plum last=plum
@fruits ← 2, $extra ← kiwi, $joined ← apple,pear,kiwi, $last ← kiwi
4my @fruits→ 2 = ("apple", "pear");5my $extra→ kiwi = "kiwi";6push @fruits→ 3, $extrakiwi;7my $joined→ apple,pear,kiwi = join(",", @fruits3);8my $last→ kiwi = $fruits[-1]kiwi;910print "extra=$extrakiwi\n";11print "joined=$joinedapple,pear,kiwi\n";12print "last=$lastkiwi\n";outputextra=kiwi joined=apple,pear,kiwi last=kiwi
@fruits ← 2, $extra ← mango, $joined ← apple,pear,mango, $last ← mango
4my @fruits→ 2 = ("apple", "pear");5my $extra→ mango = "mango";6push @fruits→ 3, $extramango;7my $joined→ apple,pear,mango = join(",", @fruits3);8my $last→ mango = $fruits[-1]mango;910print "extra=$extramango\n";11print "joined=$joinedapple,pear,mango\n";12print "last=$lastmango\n";outputextra=mango joined=apple,pear,mango last=mango
Push One Fruit
@fruitsstarts withappleandpear.$extraisplum.push @fruits, $extraappendsplum.$fruits[-1]reads the last value. | Step | Array contents | | --- | --- | | start |apple,pear| | afterpush|apple,pear,plum| | last value |plum|
Exercise: array_append.pl
Push one extra fruit onto an array, join the array, and print the last value