在 irb 中使用 .reverse
Using .reverse in irb
在 IRB 中,
.sort 运行良好。
(1..10).to_a.sample(5).sort => [1, 3, 6, 8, 9]
但是,.reverse 不起作用
(1..10).to_a.sample(5).reverse => [4, 3, 10, 2, 1]
我怎样才能得到反转的结果?
谢谢
反向功能正常。 “reverse”不按值反转,它按位置反转。第一项成为最后一项。第二个成为倒数第二个。等等...由于您正在反转随机数数组,因此您将反转那些未排序的随机数。
又来了,不过显示的是中间随机数。
2.6.4 :008 > nums = (1..10).to_a.sample(5)
=> [9, 2, 8, 3, 5]
2.6.4 :009 > nums.reverse
=> [5, 3, 8, 2, 9]
如果要倒序,先对随机数排序,再倒序。
(1..10).to_a.sample(5).sort.reverse
再次,所有步骤...
2.6.4 :010 > nums = (1..10).to_a.sample(5)
=> [7, 9, 8, 4, 1]
2.6.4 :011 > sorted = nums.sort
=> [1, 4, 7, 8, 9]
2.6.4 :012 > sorted.reverse
=> [9, 8, 7, 4, 1]
在 IRB 中,
.sort 运行良好。
(1..10).to_a.sample(5).sort => [1, 3, 6, 8, 9]
但是,.reverse 不起作用
(1..10).to_a.sample(5).reverse => [4, 3, 10, 2, 1]
我怎样才能得到反转的结果? 谢谢
反向功能正常。 “reverse”不按值反转,它按位置反转。第一项成为最后一项。第二个成为倒数第二个。等等...由于您正在反转随机数数组,因此您将反转那些未排序的随机数。
又来了,不过显示的是中间随机数。
2.6.4 :008 > nums = (1..10).to_a.sample(5)
=> [9, 2, 8, 3, 5]
2.6.4 :009 > nums.reverse
=> [5, 3, 8, 2, 9]
如果要倒序,先对随机数排序,再倒序。
(1..10).to_a.sample(5).sort.reverse
再次,所有步骤...
2.6.4 :010 > nums = (1..10).to_a.sample(5)
=> [7, 9, 8, 4, 1]
2.6.4 :011 > sorted = nums.sort
=> [1, 4, 7, 8, 9]
2.6.4 :012 > sorted.reverse
=> [9, 8, 7, 4, 1]