找回密码
 注册
查看: 2649|回复: 0

perl中的列表和数组

[复制链接]
发表于 2011-11-13 10:03:51 | 显示全部楼层 |阅读模式
如果把标量认为是Perl 中的单数的话,如我们在第二章开头讨论的,那列表(list)和数组则可认为是Perl 中的复数。
列表是标量的有序集。数组是包含列表的变量。在Perl 中这个两个术语是可以互换的。但严格意义上讲,列表是指数据,
而数组是其变量名。可以有一些值(列表)但不属于数组;但每一个数组标量都有一个列表,虽然其可以为空。图3-1 是
一个列表,无论其是否存储在一个数组中。
图3-1 一个有五个元素的列表
索引   值
0     35
1       12.4
2     “hello”
3      1.72e30
4    “bye\n”

列表中每一个元素都是一个独立的标量值。这些值是有顺序的,也就是说,这些值从开头到最后一个元素有一个固定的序
列。数组或者列表中的元素是编了号的,其索引从整数0 开始◆,依次增一,因此数组或者列表第一个元素的索引为0。
◆数组或者列表在Perl 中的索引总是从0 开始,这和某些语言不同。在Perl 的早期版本中,是可以改变数组列表初始索引值的(不只对一
个数组或列表而是一次针对所有的)。Larry 后来发现这是个错误的功能, 其应用也让人失望。但是,如果你特别感兴趣的话,可以参
看perlvar 用户手册中的$[变量。
由于每一个元素是一个独立的标量值,因此一个列表或者数组可以包含数字,字符串,undef 值,或者任意不同类型的标量
值的组合。然而,这些元素的类型通常是一致的,例如关于书名的列表(值均为字符串),关于余弦的列表(值均为数字)。
列表和数组可以包含任意数量的元素。最少含有0 元素,最多可以填满你的可用内存。这里又体现了Perl 的设计哲学,“没
有不必要的限制”。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|生物统计家园 网站价格

GMT+8, 2024-11-23 16:10 , Processed in 0.023259 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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