• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

Perl变量(3)--关联数组

发布: 2007-7-04 20:04 | 作者: admin | 来源:  网友评论 | 查看: 11次 | 进入软件测试论坛讨论

领测软件测试网

 关联数组和前面说的数组类似,它包含标量数据,可用索引值来单独选择这些数据,和数组不同的是, 关联数组的索引值不是非负的整数而是任意的标量。这些标量称为Keys,可以在以后用于检索数组中的数值。

  关联数组的元素没有特定的顺序,你可以把它们想象为一组卡片。每张卡片上半部分是索引而下半部分是数值。

  关联数组是P erl语言中特有的,关联数组是一个功能强大的数组。使用关联数组时要在前面加上%号,关联数组的格式如:

  %ARRAY =(key1,value1,key2,value2,key3,value3);

  每一个key都有一个相对应的值(value)。

  和数组类似,$zmd,@zmd,%zmd之间没有任何联系。Perl为对象的不同类型保留独立的命名空间。

  下面介绍关联数组的操作:

  在关联数组中增加、更改一对数据:ARRAY={key}=value; 在关联数组ARRAY中加上一对key-value,要在关联数组名称前加上$号,而且key的名称要在{}符号之间,最后再指定key所对应的 value值。如果在这个关联数组中已经有这个key了.就会更改这个key所对应的value。

  keys(%array)操作符可生成由关联数组%array中的所有当前关键字组成的列表。即返回奇数个元素(第1,3,5,7...个)的列表。

  values(%ar ray)操作符返回由关联数组%array中所有当前值组成的列表,即返回偶数个列表。

  echo(%array)操作符返回由一个关键字和一个值对构成的两个元素的表。对同一数组再操作时返回下一对值直至结束。若没有更多的对时,echo()返回空表。 (这在打印全部列表中很有用)

  删除一对在关联数组中的数据:delete $ARRAY{key};delete 是 Perl 所提供的函数,作用是删除关联数组中的一个key以及这个 key 所对应的 value。使用方法是 在 delete 函数之后,指定关联数组中要删除的key名称。
关联数组的综合举例:

  %fred=(one,"zmd",two,"cxm"); $a=$fred{one};--- #$a等于"zmd"
  $b=$fred{two}---#$b等于"cxm"
  $fred{two}="yes"--- #%fred=(one,"zmd",two,"yes")
  @number=keys(%fred)--- #@list=(one,two)
  @user=values(%fred)---#@user=("zmd","cxm")
  ($number,$name)=echo(%fred) --- #此时$number的值为one,$name的值为"zmd",再执行一次$number为值为two,$name的值为"cxm")
  @a=%fred--- #将关联数组fred指定给数组a,这时@a=(one,"zmd",two,"cxm")
  %b=@a---#将数组a指定给关联数组b,这时%b=(one, "zmd",two,"cxm")
  delete $fred{one}---#将关联数组中key值为one的一对key-value删除,这时%fred=(two,"cxm")
  %name=()---#把%name 关联数组置空

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网