国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Perl > 正文

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

2020-10-31 14:51:06
字體:
來源:轉載
供稿:網友

我不確定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,但是并不改變數組的大?。?br />
復制代碼 代碼如下:

$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'
        ];

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

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南城县| 威海市| 怀化市| 龙泉市| 临海市| 江油市| 法库县| 化州市| 浙江省| 武清区| 济宁市| 绥阳县| 平果县| 广灵县| 芮城县| 北宁市| 长白| 金平| 新昌县| 北宁市| 潼南县| 武清区| 高州市| 仪陇县| 德令哈市| 枝江市| 泾阳县| 中超| 武安市| 义马市| 宝兴县| 镇康县| 姚安县| 应用必备| 抚远县| 安龙县| 互助| 稷山县| 宁安市| 峡江县| 安岳县|