Ruby数组知识讲解

开发 开发工具
Ruby数组对于一个刚刚基础Ruby语言不久的人来说是比较难以掌握的,但是,我们必须要及时的掌握这些基础知识,才能提升编程能力。

Ruby语言在实际使用周边能够可以帮助我们简便的实现许多功能需求。在这里我们将会为大家详细介绍有关Ruby数组的一些使用方法。#t#

你通过在方括号里列出元素并用逗号将它们相互隔开来创建一个数组. Ruby数组可以适应不同的对象类型

  1. ruby> ary = [1, 2, "3"]   
  2. [1, 2, "3"]  

就像前面提到的字符串一样.数组也可以相乘或相加

  1. ruby> ary + ["foo", "bar"]   
  2. [1, 2, "3", "foo", "bar"]   
  3. ruby> ary * 2   
  4. [1, 2, "3", 1, 2, "3"]  

我们可用索引来访问Ruby数组的任意一部分.

  1. ruby> ary[0]   
  2. 1   
  3. ruby> ary[0,2]   
  4. [1, 2]   
  5. ruby> ary[0..1]   
  6. [1, 2]   
  7. ruby> ary[-2]   
  8. 2   
  9. ruby> ary[-2,2]   
  10. [2, "3"]   
  11. ruby> ary[-2..-1]   
  12. [2, "3"]  

(负数索引表示到数组末尾的偏移,而不是从开头算起.)
Ruby数组可以和字符串互相转化,分别使用join和split:

  1. ruby> str = ary.join(":")   
  2. "1:2:3"   
  3. ruby> str.split(":")   
  4. ["1", "2", "3"]  

哈希表

一个关联Ruby数组不通过连续的数字索引来访问,而是通过任何类型的主键(key)访问.这样的数组有时被叫作哈希(hash)或者字典(dictionary).在Ruby里,我们趋向于用哈希这个术语.将一对对的元素用逗号分隔开,并用大括号({})括起来,这样就组成了一个哈希表.你用一个关键字在哈希表里进行搜索,就像你在数组里用索引来提取数据一样.

  1. ruby> h = {1 => 2, "2" => "4"}   
  2. {1=>2, "2"=>"4"}   
  3. ruby> h[1]   
  4. 2   
  5. ruby> h["2"]   
  6. "4"   
  7. ruby> h[5]   
  8. nil   
  9. ruby> h[5] = 10 # appending value   
  10. 10   
  11. ruby> h   
  12. {5=>10, 1=>2, "2"=>"4"}   
  13. ruby> h.delete 1 # deleting value   
  14. 2   
  15. ruby> h[1]   
  16. nil   
  17. ruby> h   
  18. {5=>10, "2"=>"4"} 

以上就是我们为大家介绍的有关Ruby数组知识介绍。

责任编辑:曹凯 来源: jb51.net
相关推荐

2009-12-15 15:28:22

Ruby重载

2009-12-15 14:58:19

Ruby迭代器

2009-12-16 14:24:48

Ruby函数lambd

2009-12-14 09:33:04

Ruby安装

2009-12-17 15:11:47

Ruby百分号表示法

2009-12-14 15:30:43

安装Ruby on R

2009-12-16 15:41:10

Ruby on Rai

2009-12-16 17:37:31

Ruby on Rai

2009-12-16 13:21:22

Ruby will_p

2009-12-15 09:56:51

Ruby流程控制

2009-12-18 14:35:01

Ruby奇特变量

2009-12-14 11:33:59

Ruby正则表达式

2009-12-15 13:26:33

Ruby单态方法

2009-12-14 14:32:50

Ruby线程局部域变量

2010-05-05 13:13:55

Unix内核

2009-12-22 14:54:52

WCF安全

2010-05-04 09:22:10

Unix文件

2010-05-04 12:25:28

Unix链接

2010-04-30 13:27:26

Unix cronta

2010-05-05 13:45:21

Unix Telnet
点赞
收藏

51CTO技术栈公众号