当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby Struct.values_at用法及代码示例


本文简要介绍ruby语言中 Struct.values_at 的用法。

用法

values_at(*integers) → array
values_at(integer_range) → array

self 返回一个值数组。

给定整数参数 integers,返回一个数组,其中包含由 integers 之一给出的每个值:

Customer = Struct.new(:name, :address, :zip)
joe = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
joe.values_at(0, 2)    # => ["Joe Smith", 12345]
joe.values_at(2, 0)    # => [12345, "Joe Smith"]
joe.values_at(2, 1, 0) # => [12345, "123 Maple, Anytown NC", "Joe Smith"]
joe.values_at(0, -3)   # => ["Joe Smith", "Joe Smith"]

如果 integers 中的任何一个超出范围,则引发 IndexError ;见Array Indexes

给定整数范围参数integer_range,返回一个数组,其中包含范围元素给出的每个值;为大于结构的范围元素填充 nil 值:

joe.values_at(0..2)
# => ["Joe Smith", "123 Maple, Anytown NC", 12345]
joe.values_at(-3..-1)
# => ["Joe Smith", "123 Maple, Anytown NC", 12345]
joe.values_at(1..4) # => ["123 Maple, Anytown NC", 12345, nil, nil]

如果范围内的任何元素为负数且超出范围,则引发 RangeError ;见Array Indexes

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Struct.values_at。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。