Arrays store ordered values, and indexes choose one position from the array.

index An array index is a zero-based number that selects one array element.

Array Indexes

index
array_indexes.pl
Replay: real traced execution (multi-file project)
use strict;
use warnings;

my @items = ("alpha", "beta", "gamma");
my $index = 1;
my $selected = $items[$index];
my $count = scalar @items;

print "index=$index\n";
print "selected=$selected\n";
print "count=$count\n";
use strict;
use warnings;

my @items = ("alpha", "beta", "gamma");
my $index = 0;
my $selected = $items[$index];
my $count = scalar @items;

print "index=$index\n";
print "selected=$selected\n";
print "count=$count\n";
use strict;
use warnings;

my @items = ("alpha", "beta", "gamma");
my $index = 2;
my $selected = $items[$index];
my $count = scalar @items;

print "index=$index\n";
print "selected=$selected\n";
print "count=$count\n";
  1. @items ← 3, $index ← 1, $selected ← beta, $count ← 3

    4my @items→ 3 = ("alpha", "beta", "gamma");5my $index→ 1 = 1; #@index=0, 26my $selected→ beta = $items[$index]beta;7my $count→ 3 = scalar @items3;89print "index=$index1\n";10print "selected=$selectedbeta\n";11print "count=$count3\n";
    outputindex=1
    selected=beta
    count=3
  1. @items ← 3, $index ← 0, $selected ← alpha, $count ← 3

    4my @items→ 3 = ("alpha", "beta", "gamma");5my $index→ 0 = 0;6my $selected→ alpha = $items[$index]alpha;7my $count→ 3 = scalar @items3;89print "index=$index0\n";10print "selected=$selectedalpha\n";11print "count=$count3\n";
    outputindex=0
    selected=alpha
    count=3
  1. @items ← 3, $index ← 2, $selected ← gamma, $count ← 3

    4my @items→ 3 = ("alpha", "beta", "gamma");5my $index→ 2 = 2;6my $selected→ gamma = $items[$index]gamma;7my $count→ 3 = scalar @items3;89print "index=$index2\n";10print "selected=$selectedgamma\n";11print "count=$count3\n";
    outputindex=2
    selected=gamma
    count=3

Pick by Index

  1. @items stores alpha, beta, and gamma.
  2. Perl array indexes start at 0.
  3. $index is 1.
  4. $items[$index] selects beta. | Index | Value | Selected? | | --- | --- | --- | | 0 | alpha | no | | 1 | beta | yes | | 2 | gamma | no |

Exercise: array_indexes.pl

Select one array value by index, then print the selected value and item count