use Data::Dumper; my @array = (); $array[0] = [1]; $array[2] = [2]; @array = sort { $$a[0] cmp $$b[0]} @array; print Dumper \@array; #### use strict; use warnings; use Data::Dumper; my @courselist = ( ["UM", "CS 34", ], ["AC", "PHIL 13", ], ["UM", 'BIO 567', ], ["UA", 'BIO 999', ], ["UM", 'BIO 1', ], ); @courselist = sort {$$a[0] cmp $$b[0] or $$a[1] cmp $$b[1]} @courselist; print Dumper(\@courselist);