>我有一个循环,想在其中为i + (i-1)的值分配一个字符串,但不确定如何进行。
(1..50).each do |i|
answer = "#{i+(i-1)}"
end
在此代码中,答案必须是一个字符串,因为它最终将与数据库表相关。
在字符串中评估此内容的最佳方法是什么,我已经尝试了几种变体,但没有任何运气,因此任何有用的指针将不胜感激。
也许是这样的?
(1..50).map{|i| i + (i-1)}.map(&:to_s)
Map
将获取Rage
并在每个元素上执行用块编写的加法,然后返回转换后的Array
(Array
和Range
是可枚举的类型),我们再次将其传递给map
&:to_s
是 Ruby 的语法糖,它将to_s
变成可以传递给 map 的块。它等于.map {|i| i.to_s}