我不知道为什么会这样。这是代码:
def calculate_discount items
items.each do |item|
#Nothing here
end
end
items = [5, 100]
calculate_discounts items
然后当我在命令行中运行它时,我得到:
5
100
还有人知道发生了什么吗?
我不知道为什么会这样。这是代码:
def calculate_discount items
items.each do |item|
#Nothing here
end
end
items = [5, 100]
calculate_discounts items
然后当我在命令行中运行它时,我得到:
5
100
还有人知道发生了什么吗?
返回值并不意味着实际打印了该值。
使用 IRB 时,“p”函数显示函数返回的值。
Ruby 的函数总是返回一个值。如果您没有 return 语句,那么 Ruby 会返回函数中计算的最后一个值。Ruby 的集合迭代器也返回一个值:
irb(main):018:0> [1,2,3].each do |item|
irb(main):019:1* end
=> [1, 2, 3]
因此,在这种情况下,“calculate_discount”返回“items”的元素。
知道了。对不起,我很愚蠢,因为我有一段时间没有编写 ruby 代码了。我忘记了 ruby 会自动返回最后一个值。