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

perl如何访问数组元素

[复制链接]
发表于 2011-11-13 10:04:39 | 显示全部楼层 |阅读模式
如果你使用过其它语言的数组,那对于Perl 可以通过索引值来访问元素的做法不会觉得奇怪。
数组中的元素是由连续整数编了号的,其从0 开始,每增加一个元素,其索引值加一,如:
$fred[0] = “yabba”;
$fred[1]= “dabba”;
$fred[2] = “doo”;
数组名字(本例中:fred)和标量是属于完全不同的命名空间(namespace)。同一程序也可以同时包含叫做$fred 的标量变
量。Perl 将它们当作完全不同的事物来看待,不会混淆◆。(但维护人员可能混淆,所以最好不要将它们以相同的名字来命
名)。
◆语法总是无二义性的;也许有些技巧,但是确定的。
可以在任何◆能够使用标量变量(如$fred)的地方使用数组元素(如$fred[2])。例如,可以使用上一章介绍的方法来获得
数组元素的值,或者改变它。
◆实际上是绝大多数。最明显的例外是foreach 循环中的控制变量(在本章后面将介绍到), 必须是标量变量。还有些例外,如print 和printf
的“indirect object slot”和“indirect filehandle slot”。
print $fred[0];
$fred[2] = “diddley”;
$fred[1] .= “whatsis”
当然,下标可以是任何能返回数值的表达式。如果其值不为整数,则自动将其转换为小于它的最大整数值:
$number = 2.71828;
print $fred[$number-1]; #和print $fred[1]一样
如果下标超出了数组的范围,则其值为undef。这和通常的变量情况是一样的,如果没有值存放在变量中,则其为undef。
$blank = $fred [142_857] #此数组元素未存放值,得到undef
$blanc = $mel; #$mel 未存放值(未初始化),得到undef
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 08:08 , Processed in 0.022767 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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