小编Jul*_*ian的帖子

从具有边界的数组生成集

我想知道是某种“Array.to_range”方法,以便从两个元素的数组中创建一些范围。我知道我可以执行这样的操作:

a = [1,5]
Set.new(a[0]..a[1])
 => #<Set: {1, 2, 3, 4, 5}>
Run Code Online (Sandbox Code Playgroud)

这是一个很好的解决方案,但是我尝试综合更多,以存档如下内容:

a = [1,5]
Set.new(a.to_range)
Run Code Online (Sandbox Code Playgroud)

因为如果我这样做,会生成一个只有 2 个元素的 Set 并且我想要完整的元素范围。

a = [1,5]
Set.new(a)
 => #<Set: {1, 5}> 
Run Code Online (Sandbox Code Playgroud)

很明显

{1, 5} != {1, 2, 3, 4, 5}
Run Code Online (Sandbox Code Playgroud)

那么,知道如何更多地合成这个表达式吗?

Set.new(a[0]..a[1])
Run Code Online (Sandbox Code Playgroud)

ruby

4
推荐指数
1
解决办法
63
查看次数

标签 统计

ruby ×1