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

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


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

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


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

ruby> ary[0]
   1
ruby> ary[0,2]
   [1, 2]
ruby> ary[0..1]
   [1, 2]
ruby> ary[-2]
   2
ruby> ary[-2,2]
   [2, "3"]
ruby> ary[-2..-1]
   [2, "3"]  


(负数索引表示到数组末尾的偏移,而不是从开头算起.)

数组可以和字符串互相转化,分别使用join和split:

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


哈希表

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

复制代码 代码如下:
ruby> h = {1 => 2, "2" => "4"} 
   {1=>2, "2"=>"4"} 
ruby> h[1] 
   2 
ruby> h["2"] 
   "4" 
ruby> h[5] 
   nil 
ruby> h[5] = 10     # appending value 
   10 
ruby> h 
   {5=>10, 1=>2, "2"=>"4"} 
ruby> h.delete 1   # deleting value 
   2 
ruby> h[1] 
   nil 
ruby> h 
   {5=>10, "2"=>"4"}   
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。