1. 多位数组 
  2.  
  3.   
  4.  
  5. my %HAO; 
  6. for $i(0..9){ 
  7.    for $j(0..9) { 
  8.       $HAO[$i][$j] = $i.$j; 
  9.    } 
  10.  
  11.  
  12. for $x(0..$#HAO) { 
  13.    for $y(0..$#{$HAO[$x]}) { 
  14.       print $HAO[$x][$y]." "; 
  15.    } 
  16.    print "\n"; 
  17.  
  18. PS D:\> perl 01.pl 
  19. 00 01 02 03 04 05 06 07 08 09 
  20. 10 11 12 13 14 15 16 17 18 19 
  21. 20 21 22 23 24 25 26 27 28 29 
  22. 30 31 32 33 34 35 36 37 38 39 
  23. 40 41 42 43 44 45 46 47 48 49 
  24. 50 51 52 53 54 55 56 57 58 59 
  25. 60 61 62 63 64 65 66 67 68 69 
  26. 70 71 72 73 74 75 76 77 78 79 
  27. 80 81 82 83 84 85 86 87 88 89 
  28. 90 91 92 93 94 95 96 97 98 99 
  29.  
  30.   
  31.  
  32. #结果 
  33.  
  34.   
  35.  
  36. 哈希,数组 
  37.  
  38. my %HAO = ( 
  39.            fine => ["df","ee"], 
  40.            nine => ["fine","ok"], 
  41.            wcc => ["you","fuck"] 
  42. ); 
  43.  
  44. foreach $key(keys %HAO) { 
  45.    for $j(0..$#{$HAO{$key}}) { 
  46.       print $HAO{$key}[$j]." "; 
  47.  
  48.    } 
  49.    print "\n"; 
  50.   
  51.  
  52. #显示结果 
  53.  
  54. PS D:\> perl 01.pl 
  55. df ee 
  56. you fuck 
  57. fine ok 
  58. PS D:\> 


 

 
  
  1. ################################################################## 
  2. my %month = ( 
  3.              "01" => "Jan", 
  4.              "02" => "Feb", 
  5.              "03" => "Mar", 
  6.              "04" => "Apr", 
  7.              "05" => "May", 
  8.              "06" => "Jun", 
  9.              "07" => "Aug" 
  10.  
  11. ); 
  12.  
  13.  
  14. $point = \%month; 
  15. print "\n address of hash = $point\n"; 
  16. foreach $i(sort keys %month) { 
  17.    print "$i $$point{$i}\n"; # 
  18. #  print "$i $month{$i}\n";  
  19. print "\n\n"; 
  20.  
  21. foreach $i(sort keys %$point) { 
  22.    print "$i $$point{$i}\n"; # 
  23.  
  24. 输出 
  25.  address of hash = HASH(0x285bac) 
  26. 01 Jan 
  27. 02 Feb 
  28. 03 Mar 
  29. 04 Apr 
  30. 05 May 
  31. 06 Jun 
  32. 07 Aug 
  33.  
  34.  
  35. 01 Jan 
  36. 02 Feb 
  37. 03 Mar 
  38. 04 Apr 
  39. 05 May 
  40. 06 Jun 
  41. 07 Aug 
 
  
  1. 多维数组 
  2. 1  #!/usr/bin/perl 
  3. 2  # 
  4. 3  # Using Multi-dimensional Array references 
  5. 4  # 
  6. 5  $line = ['solid', 'black', ['1','2','3'] , ['4', '5', '6']]; 
  7. 6  print "\$line->[0] = $line->[0] \n"; 
  8. 7  print "\$line->[1] = $line->[1] \n"; 
  9. 8  print "\$line->[2][0] = $line->[2][0] \n"; 
  10. 9  print "\$line->[2][1] = $line->[2][1] \n"; 
  11. 10 print "\$line->[2][2] = $line->[2][2] \n"; 
  12. 11 print "\$line->[3][0] = $line->[3][0] \n"; 
  13. 12 print "\$line->[3][1] = $line->[3][1] \n"; 
  14. 13 print "\$line->[3][2] = $line->[3][2] \n"; 
  15. 14 print "\n"; # The obligatory output beautifier.  
  16.  
  17.     结果输出如下: 
  18.  
  19.  
  20. $line->[0] = solid 
  21. $line->[1] = black 
  22. $line->[2][0] = 1 
  23. $line->[2][1] = 2 
  24. $line->[2][2] = 3 
  25. $line->[3][0] = 4 
  26. $line->[3][1] = 5 
  27. $line->[3][2] = 6  
  28.  
  29.     那么三维数组又如何呢?下面是上例略为改动的版本。 
  30.  
  31.  
  32. 1  #!/usr/bin/perl 
  33. 2  # 
  34. 3  # Using Multi-dimensional Array references again 
  35. 4  # 
  36. 5  $line = ['solid', 'black', ['1','2','3', ['4', '5', '6']]]; 
  37. 6  print "\$line->[0] = $line->[0] \n"; 
  38. 7  print "\$line->[1] = $line->[1] \n"; 
  39. 8  print "\$line->[2][0] = $line->[2][0] \n"; 
  40. 9  print "\$line->[2][1] = $line->[2][1] \n"; 
  41. 10 print "\$line->[2][2] = $line->[2][2] \n"; 
  42. 11 print "\$line->[2][3][0] = $line->[2][3][0] \n"; 
  43. 12 print "\$line->[2][3][1] = $line->[2][3][1] \n"; 
  44. 13 print "\$line->[2][3][2] = $line->[2][3][2] \n"; 
  45. 14 print "\n";  
  46.  
  47.     结果输出如下: 
  48.  
  49.  
  50. $line->[0] = solid  
  51. $line->[1] = black  
  52. $line->[2][0] = 1  
  53. $line->[2][1] = 2  
  54. $line->[2][2] = 3  
  55. $line->[2][3][0] = 4  
  56. $line->[2][3][1] = 5  
  57. $line->[2][3][2] = 6  
  58.  
  59.     访问第三层元素的方式形如$line->[2][3][0],类似于C语言中的