Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 如何将降压范围转换为阵列?_Ruby - Fatal编程技术网

Ruby 如何将降压范围转换为阵列?

Ruby 如何将降压范围转换为阵列?,ruby,Ruby,我有一个类似于(1000..0)的范围,我使用了每一个,但它没有任何作用。我试图将其转换为数组,但得到了一个空数组 我还尝试了(1000..0).步骤(-1).每一步都告诉我步骤不能是负数 有没有办法使用(1000..0)。每个都会重复,或者转换成一个数组,比如[100099998,…,0]?(0..1000)。反转 这将创建所需的数组。(0..1000)。要反转 这将创建所需的阵列。您可以通过两种方式来执行此操作: (0..1000).each do |i| n = 1000 - i

我有一个类似于
(1000..0)
的范围,我使用了
每一个
,但它没有任何作用。我试图将其转换为数组,但得到了一个空数组

我还尝试了
(1000..0).步骤(-1).每一步都告诉我
步骤不能是负数

有没有办法使用
(1000..0)。每个
都会重复,或者转换成一个数组,比如
[100099998,…,0]

(0..1000)。反转

这将创建所需的数组。

(0..1000)。要反转

这将创建所需的阵列。

您可以通过两种方式来执行此操作:

(0..1000).each do |i|
  n = 1000 - i
  # Use n for all calculations
end

(0..1000).to_a.reverse.each do |n|
  # Involves creating temporary array, but overhead is usually minor for
  # relatively small numbers.
end
不要忘记,您也可以在没有范围的情况下执行此操作:

1001.times do |i|
  n = 1000 - i
end

有两种方法可以实现这一点:

(0..1000).each do |i|
  n = 1000 - i
  # Use n for all calculations
end

(0..1000).to_a.reverse.each do |n|
  # Involves creating temporary array, but overhead is usually minor for
  # relatively small numbers.
end
不要忘记,您也可以在没有范围的情况下执行此操作:

1001.times do |i|
  n = 1000 - i
end

=>这里有很多解决办法=>这里有很多解决办法我不能说我以前见过
map{x | x}
。你为什么要做无操作地图?是的,不知道这有多标准。。。我正在使用贴图创建一个数组。将范围转换为数组是给定的选项之一。我只是在解决这个问题。任何范围都有一个
到_a
的方法,这个方法做得更优雅。根据你的评论更改了答案。我不能说我以前见过
映射{x | x}
。你为什么要做无操作地图?是的,不知道这有多标准。。。我正在使用贴图创建一个数组。将范围转换为数组是给定的选项之一。我只是在解决这个问题。任何范围都有一个
到_
的方法,可以更优雅地完成这项工作。根据您的评论更改答案。