自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

深入解析Perl中Perl數(shù)組的使用

開發(fā) 架構(gòu)
Perl中Perl數(shù)組的使用你收否了解,這里向大家簡(jiǎn)單介紹一下,Perl數(shù)組是Perl里面一種非常有用的東西。相信通過(guò)本文的介紹你對(duì)Perl數(shù)組的概念一定會(huì)有所認(rèn)識(shí)。

本文和大家重點(diǎn)討論一下Perl中Perl數(shù)組的使用問(wèn)題,在學(xué)習(xí)Perl語(yǔ)言的過(guò)程中,你經(jīng)常會(huì)遇到此類的問(wèn)題,這里和大家分享一下。Perl數(shù)組時(shí)Perl變量的一種組成元素,他有什么特點(diǎn)和用途呢,請(qǐng)看本文的詳細(xì)介紹。

Perl中Perl數(shù)組的使用

  Perl數(shù)組是perl里面一種非常有用的東西。我們可以通過(guò)下面的方式定義Perl數(shù)組:

   @a=("hello","great","cipher");
   @b=(1,2,3,4,5,6,7);

  @b的定義方式還可以寫成下面的形式:

   @b=(1..7);#這種方式對(duì)于需要1到10000的初始值得Perl數(shù)組真實(shí)太重要了?!  ?br />    @b=("a".."z");

  也是可以的,但是我想不出來(lái)對(duì)中國(guó)人有什么用。定義一個(gè)空Perl數(shù)組可以用下面的方式:

   @c=();


  訪問(wèn)Perl數(shù)組

    訪問(wèn)Perl數(shù)組通過(guò)下面的方式(下標(biāo)和c語(yǔ)言一模一樣,從0開始,basic的用戶要注意了):

   $b[0]=10000;

  注意這里引導(dǎo)符變成了$不是@。通過(guò)這個(gè)變化表示這時(shí)正在訪問(wèn)一個(gè)單獨(dú)的數(shù)據(jù)。而不是一組數(shù)據(jù)。還可以使用多個(gè)下標(biāo),但是這時(shí)就要使用@引導(dǎo)符了。例如:

   @b[5,7,9]=(45,56,67);

  這種情況下,print$b[8];將會(huì)在使用了perl-w得到一個(gè)使用未定義變量的錯(cuò)誤,其他情況下什么都不會(huì)發(fā)生。


  Perl數(shù)組之間相互拷貝,可以用下面的方式:

   @d=@c;

  這樣要比c語(yǔ)言簡(jiǎn)單多了。同c語(yǔ)言不同,perl的Perl數(shù)組是可以動(dòng)態(tài)改變大小的。因此我們可以追加,刪除Perl數(shù)組內(nèi)的元素。追加一個(gè)元素可以使用這種方式:

   @c=(@c,"hello");

  perl里面有一個(gè)專門的函數(shù)用來(lái)驚醒追加操作叫做push,push的使用方法如下:

   push(@c,"hello");
   push(@c,("hello","halloha"));
   push(@c,@a);

  這里可以看到,可以給Perl數(shù)組追加一個(gè)元素,一組元素甚至另外一個(gè)Perl數(shù)組。另外,在perl的Perl數(shù)組中可以放不同類型的標(biāo)量。這一點(diǎn)在c程序員的眼中可能有點(diǎn)怪異,但是如果記住perl里面的一切都是引用就可以了?;蛘呃斫獬蛇@是一個(gè)void類型的指針的Perl數(shù)組。有了push,就一定有pop。pop就是從Perl數(shù)組的***取出一個(gè)元素。用法為:

   pop(@a);

  既然可以從Perl數(shù)組的末尾加入元素,那么一定也可以從Perl數(shù)組的開頭加入元素。那么這個(gè)功能是由unshift函數(shù)提供的。用法為:

   unshift(@c,"hello");
   unshift(@c,("hello","halloha"));
   unshift(@c,@a);

  有了unshif就一定會(huì)有shift了。shift的功能是從Perl數(shù)組的開頭取出一個(gè)元素。用法為:unshift(@a);

  有了操作Perl數(shù)組兩端的函數(shù)那么一定也會(huì)有操作Perl數(shù)組中間部分的函數(shù),這個(gè)函數(shù)就是splice,splice函數(shù)有三個(gè)作用。***個(gè)作用是向Perl數(shù)組中間的一部分插入內(nèi)容。例如:

   @d=(1..9);
   my@e=("a".."f");
   splice(@d,2,2,@e);

  將會(huì)得到12abcdef56789,注意這里是從第二個(gè)開始插入,不是從下標(biāo)為2的元素開始插入的。splice的第二個(gè)功能是刪除,例如在剛才的代碼上面再加上:

   splice(@d,2,6);

  將可以得到1256789;splice的第三個(gè)功能就是刪除到末尾。語(yǔ)法為:

   splice(@d,2);

  就是從第二個(gè)開始,刪除到末尾。我們還應(yīng)該有一個(gè)可以把整個(gè)Perl數(shù)組合并成一個(gè)標(biāo)量的函數(shù)。這個(gè)函數(shù)就是join,join有兩個(gè)參數(shù),***個(gè)參數(shù)是合并時(shí)放在元素之間的分割符,第二個(gè)是進(jìn)行操作的Perl數(shù)組。例如:

   my@g=(1,2,3);
   join("",@g);

  將可以得到“123”,還有三個(gè)函數(shù)我們昨天已經(jīng)見(jiàn)過(guò)了,就是undef,chop和chomp。undef(@a);的作用是把@a的內(nèi)容清空。chop(@a);的作用是把Perl數(shù)組內(nèi)每個(gè)元素的末尾去一個(gè)字符。而chomp(@a);的作用則是把Perl數(shù)組內(nèi)的每一個(gè)元素的末尾的換行符去掉。我們還應(yīng)該介紹一個(gè)函數(shù)就是scalar,這個(gè)函數(shù)取得Perl數(shù)組的長(zhǎng)度。例如:

   my@h=(1,2,3);
   scalar(@h);

  將可以得到3。但是我們經(jīng)常不這么用,因?yàn)樵趯erl數(shù)組向標(biāo)量轉(zhuǎn)換時(shí)就會(huì)返回Perl數(shù)組的長(zhǎng)度,例如下面的操作就可以。

   my@i=(1,2,3,4);
   print@i."\n";

  將會(huì)打印出4。

【編輯推薦】

  1. Perl變量中Perl數(shù)組概念詳解
  2. Perl foreach控制結(jié)構(gòu)中的控制變量
  3. Perl學(xué)習(xí)筆記 Perl雙引號(hào)和單引號(hào)的區(qū)別
  4. 揭秘Perl變量中Perl純變量用法
  5. 深入解析Perl內(nèi)部函數(shù)的使用


 

責(zé)任編輯:佚名 來(lái)源: csdn.net
相關(guān)推薦

2010-07-13 10:13:35

Perl內(nèi)部函數(shù)

2010-07-20 14:41:55

Perl語(yǔ)法

2010-07-20 15:02:20

Perl數(shù)組

2010-07-19 13:49:17

Perl函數(shù)

2010-07-19 09:52:04

Perl標(biāo)量

2010-07-21 13:59:59

Perl引用

2010-07-20 13:12:11

Perl數(shù)組

2010-07-13 09:50:55

Perl數(shù)組

2010-07-13 09:58:51

Perl關(guān)聯(lián)數(shù)組

2010-07-20 15:36:58

Perl語(yǔ)法

2010-07-19 15:31:10

Perl關(guān)聯(lián)數(shù)組函數(shù)

2010-07-19 09:45:09

Perl數(shù)組

2010-07-16 13:45:41

Perl引用

2010-07-20 09:23:30

Perl構(gòu)造函數(shù)

2010-07-19 14:20:57

Perl函數(shù)

2010-07-19 13:32:55

Perl用戶函數(shù)

2010-07-21 10:18:41

Perl map函數(shù)

2010-07-21 13:43:30

Perl數(shù)組

2010-07-16 10:44:54

Perl數(shù)組

2010-07-26 13:13:33

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

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