曲径通幽论坛

标题: pop 和 push [打印本页]

作者: beyes    时间: 2011-9-21 13:57
标题: pop 和 push
当我们希望为一个数组新增一个元素时,会把该元素放到数组的末端。

在实际引用中,我们常把数组当成堆栈来用,这时新增(push)和删除(pop)操作都在数组的末端进行。这种像堆栈一样的操作数组,对应有两个操作符 pop 和 push 。pop 用来取出数组中的最后一个元素,同时返回该元素的值;push 操作则相反,它用于添加一个元素或一串元素到数组的末端。

示例代码:
[Perl] 纯文本查看 复制代码
#!/usr/bin/perl

@array = 5..11;

$var = pop(@array);
$val = pop(@array);

print "$var     $val    \n";

pop @array;

foreach (@array) {
        print "$_ ";
}
print "\n We add some element to array. \n";

push (@array, 0);
push @array, 9;
push @array, 11..15;

@otharr = qw/welcome to groad.net/;
push @array, @otharr;

foreach (@array) {
        print "$_ ";
}
print "\n";

运行输出:
./popush.pl
11      10
5 6 7 8
We add some element to array.
5 6 7 8 0 9 11 12 13 14 15 welcome to groad.net
如果数组为空,那么执行 pop 操作时什么都不做。在上面程序中,pop @array; 这句并没有错误,它只是简单的将值弹出。此外,push @array, @otharr; 这一句将 @otharr 数组中的元素压入数组 @array 中,实际上这里也可以简写成:push @array, qw/welcome to groad.net/;




欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2