Perl学习笔记[2]

简介:
1.数组和列表:数组是由括号括起来的且其元素由逗号分隔开的列表。
(1)数组和列表的第一个索引是0,每次按1递增。
(2)数组和列表中的每一个元素都是一个独立的标量值,这些标量值的类型是可以不同的。
(3)数组和列表中可以包含任意数量的元素,最多可以填满你的内存(Perl哲学:没有不必要的限制),最少含有0个元素。
(4)普通的标量变量和数组可以重名,因为他们有不同的命名空间,perl不会混淆的。
(5)在引用数组中的某个元素时,如果下标值不是整数,则perl自动将其转化为小于该值的最大整数。
(6)在引用数组中的某个元素时,如果下标值超过了下标最大值,则perl将返回undef。
(7)获得数组最后一个元素的索引:$#array_name。另外perl提供了负数索引,-1为最后一个数组元素的索引,其他的为-2,-3。。。注意这里的负数不要超过元素的个数,否则会报错。
2.列表的一些属性
(1)范围操作符 ..,
    eg.(1..5)==>(1,2,3,4,5);
          (1.6..5.8)==>(1..5)==>(1,2,3,4,5)[非整数被自动取整]
         (10..1)将得到一个空表,使用范围操作符要保证起始值小于结束值,否则得到一个空列表。
(2)qw(quote words):perl 将qw当成是单引号字符串处理,因此字符串内的\n或$variable当成普通字符处理。
3.数组的一些操作
(1)pop取出数组的最后一个元素值,push:在数组的最后添加新的元素。
(2)shift取出数组的第一个元素值,unshift:在数组的开始添加新的元素。
(3)  reverse将数组中的元素顺序倒置。
(4)  sort:根据数组中字符的ASCII码值进行顺序排序。
(5)在字符串中插入数组和标量
       引用数组元素:$qw[3],
       引用同名普通标量:$qw,${qw}
(6)数组置空的方法:
        @array=();==>正确 
        @array=undef ==>错误,会得到一个元素为undef的列表
  (7)scalar函数:强制将列表context转化为标量context
4.一些控制结构:
  if,while,foreach
    foreach 循环中控制变量的值会被Perl 自动保存和恢复。当循环进行时,是没有办法改变其值的。循环结束时,变量的值会回到循环开始前,如果没有值则为undef。这意味着如果有一个变量和控制变量有相同的名字,不用担心会混淆它们。另外如果在foreach循环中没有定义控制变量,则将自动使用默认变量$_.


本文转自 yubowei 51CTO博客,原文链接:http://blog.51cto.com/samyubw/223765
相关文章
|
2月前
|
Perl
|
2月前
|
Shell Perl
|
2月前
|
Shell Perl
|
2月前
|
Shell PHP Ruby
|
2月前
|
Unix Linux iOS开发
|
2月前
|
IDE Unix Linux
|
2月前
|
Shell Perl
|
2月前
|
程序员 编译器 Apache
|
数据库 索引 Perl