程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 更多關於編程 >> Perl中怎樣從數組中刪除某個值

Perl中怎樣從數組中刪除某個值

編輯:更多關於編程

       這篇文章主要介紹了Perl中怎樣從數組中刪除某個值?本文講解如何把數組的元素賦值為undef,然後在從數組中刪除元素,需要的朋友可以參考下

      我不確定undef是否和從數組中消除值有確切的關系,猜測一下,如果我們將undef視為"空",那麼會有一些聯系。但通常來說,將某些東西賦值為undef和刪除某些東西是不一樣的。

      首先來看怎樣把數組的元素賦值為undef,之後再了解如何從數組中刪除元素。

      從下面的代碼開始:

      代碼如下:

      use Data::Dumper qw(Dumper);

      my @dwarfs = qw(Doc Grumpy Happy Sleepy Sneezy Dopey Bashful);

      print Dumper @dwarfs;

      使用Data::Dumper打印時,得到如下輸出:

       代碼如下:

      $VAR1 = [

      'Doc',

      'Grumpy',

      'Happy',

      'Sleepy',

      'Sneezy',

      'Dopey',

      'Bashful'

      ];

      將元素賦值為undef

      使用undef()函數的返回值:

       代碼如下:

      use Data::Dumper qw(Dumper);

      my @dwarfs = qw(Doc Grumpy Happy Sleepy Sneezy Dopey Bashful);

      $dwarfs[3] = undef;

      print Dumper @dwarfs;

      這些代碼會把3號元素(數組中第4個元素)賦值為undef,但是並不改變數組的大小:

      代碼如下:

      $VAR1 = [

      'Doc',

      'Grumpy',

      'Happy',

      undef,

      'Sneezy',

      'Dopey',

      'Bashful'

      ];

      直接對數組的某個元素使用undef()函數也會產生相同的結果:

       代碼如下:

      use Data::Dumper qw(Dumper);

      my @dwarfs = qw(Doc Grumpy Happy Sleepy Sneezy Dopey Bashful);

      undef $dwarfs[3];

      print Dumper @dwarfs;

      所以,$dwarfs[3] = undef; 和 undef $dwarfs[3];的作用是一樣的,它們都能把值賦成undef。

      使用splice從數組移除元素

      splice函數會從數組中徹底刪除元素:

       代碼如下:

      use Data::Dumper qw(Dumper);

      my @dwarfs = qw(Doc Grumpy Happy Sleepy Sneezy Dopey Bashful);

      splice @dwarfs, 3, 1;

      print Dumper @dwarfs;

      $VAR1 = [

      'Doc',

      'Grumpy',

      'Happy',

      'Sneezy',

      'Dopey',

      'Bashful'

      ];

      可以看到,在這個例子中,數組因為我們從數組中間移除了一個元素而縮短了一個單位。

      這也就是怎樣從數組中刪除一個元素。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved