曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 3454|回复: 0
打印 上一主题 下一主题

pop 和 push

[复制链接]

4918

主题

5880

帖子

3万

积分

GROAD

曲径通幽,安觅芳踪。

Rank: 6Rank: 6

积分
34395
跳转到指定楼层
楼主
发表于 2011-9-21 13:57:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
当我们希望为一个数组新增一个元素时,会把该元素放到数组的末端。

在实际引用中,我们常把数组当成堆栈来用,这时新增(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/;
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2025-5-3 12:53 , Processed in 0.061163 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表