[perl笔记] 数组

$相当于C语言中指针的解析*, \相当于C语言中的取地址&

数组, 以@开头

   @array = (1, $var, "a string"); 列表()中可以为任何值,包括变量,可为不同类型,

  同一个名字可以同时用于数组变量和简单变量

  取值: $scalar = $array[0];

  对数组中的值通过下标存取,第一个元素下标为0。试图访问不存在的数组元素,则结果为NULL,但如果给超出数组大小的元素赋值,则数组自动增长,原来没有的元素值为NULL。

  拷贝:@result = @original;

  对变量赋值:

  @array = (5, 7, 11);
    ($var1, $var2) = @array; # $var1 = 5, $var2 = 7, 11被忽略
    @array = (5, 7);
    ($var1, $var2, $var3) = @array; # $var1 = 5, $var2 = 7, $var3 ="" (null)

  ..用于增量

  (1..10) = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) #整数

  (2.1..5.3) = (2.1, 3.1 ,4.1, 5.1) #实数
     (4.5..1.6) = ()

  ("aaa".."aad") = ("aaa","aab", "aac", "aad") #字符串

  数组长度

  @array = (1, 2, 3);
    $scalar = @array; # $scalar = 3,即@array的长度
    ($scalar) = @array; # $scalar = 1,即@array第一个元素的值

  子数组 
    @array = (1, 2, 3, 4, 5);
    @subarray = @array[0,1]; # @subarray = (1, 2)

  数组排序

  @array = (70, 100, 8);
    @array = sort(@array); # @array = (100, 70, 8) now

  reverse--反转数组
    @array2 = reverse(@array);
    @array2 = reverse sort (@array);

  join/split--连接/拆分

原文地址:https://www.cnblogs.com/zengyou/p/3054858.html