偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Perl Pop和Perl Push操作異同之處

開發(fā) 架構(gòu)
本文向大家簡單介紹一下Perl Pop和Perl Push操作,。如果使用Perl Pop,Perl Push和類似的操作符以避免使用索引,那你的程序通常會(huì)比大量使用索引的情況要快。

本文和大家重點(diǎn)討論一下Perl Pop和Perl Push操作,可以使用新的,更大的索引(index)將新值存放在數(shù)組的末尾。但實(shí)際上,Perl程序員不使用索引,因此,在下面幾段中,我們將介紹幾種不使用索引來操作數(shù)組的方法。

Perl Pop和Perl Push操作

可以使用新的,更大的索引(index)將新值存放在數(shù)組的末尾。但實(shí)際上,Perl程序員不使用索引,因此,在下面幾段中,我們將介紹幾種不使用索引來操作數(shù)組的方法。

當(dāng)然,我們是在開玩笑,但這個(gè)玩笑基于Perl的一些事實(shí)。數(shù)組中使用索引并沒有發(fā)揮Perl的威力。如果使用Perl Pop,Perl Push和類似的操作符以避免使用索引,那你的程序通常會(huì)比大量使用索引的情況要快,而且能避免"差一位(off-by-one)"類型的錯(cuò)誤,這類錯(cuò)誤通常叫做"邊界值錯(cuò)誤"。有時(shí),一個(gè)初級的Perl程序員(想比較Perl和C的速度)將針對C優(yōu)化過的排序程序(有大量的索引操作),用Perl來直接實(shí)現(xiàn)(從而有大量的索引操作),驚訝于它為什么如此慢。答案是,"用小提琴來訂釘子不是一個(gè)好辦法"。

通常將數(shù)組類似于棧來使用,在其右邊添加或者刪除數(shù)據(jù)。(這是數(shù)組中"***"一個(gè)元素,其索引***)。這些操作經(jīng)常出現(xiàn),因此提供了特殊的函數(shù)。

◆pop操作將數(shù)組的***一個(gè)元素取出并返回:

@array=5..9;
$fred=pop(@array);#$fred得到9,@array現(xiàn)在為(5,6,7,8)
$barney=pop@array;#$barneygets8,@array現(xiàn)在為(5,6,7)
pop@array;#@array現(xiàn)在為(5,6)(7被丟棄了)
***一個(gè)例子中,pop使用在"inavoidcontext",也就是說沒有存放其返回值的地方。這樣使用pop是合法的。

如果數(shù)組為空,那pop什么也不做(因?yàn)闆]有元素可以移出),并返回undef。

你可能已注意到pop后可以使用或者不使用括號。這在Perl中是一條通用規(guī)則:如果去掉括號含義不變,那括號就是可選的。和pop相反的操作是Perl_Push,它可以將一個(gè)元素(或者一列元素)加在數(shù)組的末尾:
◆受過相應(yīng)教育的人將發(fā)現(xiàn),這是同義反復(fù)。
Perl Push(@array,0);#@array現(xiàn)在為(5,6,0)
Perl Push@array,8;#@array現(xiàn)在為(5,6,0,8)
Perl Push@array,1..10;#@array現(xiàn)在多了10個(gè)元素
@others=qw/90210/;
Perl Push@array,@others;#@array現(xiàn)在又多了5個(gè)元素(共有19個(gè))
Perl Push的***個(gè)參數(shù)或者pop的唯一參數(shù)必須是數(shù)組變量。

出自:http://www.kklinux.com/html/biancheng/Perl/200901/26-2834.html

【編輯推薦】

  1. 實(shí)例解析Perl substr函數(shù)應(yīng)用
  2. Perl模式匹配參數(shù)使用詳解
  3. Windows下Perl開發(fā)環(huán)境的安裝和配置
  4. 學(xué)習(xí)筆記 Perl split函數(shù)用法指導(dǎo)
  5. Perl多進(jìn)程及其和多線程的關(guān)系解析

 

 

責(zé)任編輯:佚名 來源: kklinux.cn
相關(guān)推薦

2010-07-20 15:02:20

Perl數(shù)組

2010-07-19 13:49:17

Perl函數(shù)

2010-07-21 14:18:27

Perl函數(shù)

2010-07-19 09:16:47

Perl包

2010-07-20 14:41:55

Perl語法

2010-07-20 16:05:07

Perl包

2010-07-19 10:01:57

Perl函數(shù)

2010-07-19 11:12:43

Perl 不等于

2010-07-21 13:27:06

Perl模式匹配

2010-07-13 16:34:34

Perl 哈希表

2010-07-21 09:50:51

Perl調(diào)試

2010-07-15 14:01:10

Perl目錄句柄

2010-07-14 14:18:51

Perl操作符

2009-08-27 11:07:35

ibmdw云計(jì)算

2009-08-27 11:09:52

ibmdw云計(jì)算

2010-07-14 14:30:31

Perl操作符

2010-07-19 11:00:24

Perl操作符

2010-07-13 11:25:42

Perl雙引號

2010-07-20 10:02:15

Perl類

2010-07-13 09:50:55

Perl數(shù)組
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號