露比的"syntax error, unexpected `end', expecting end-of-input"



我有一个积累proc参数的练习,但;语法错误,意外的"end",应为输入结尾";消息在实际操作过程中出现,我找不到哪里有多余或缺失的";结束";,请告诉我,谢谢。

def total2(from, to, &block)    
result = 0 
from.upto(to) |num|         
if block                
result +=           
block.call(num) 
else                    
result += num       
end
end
return result               
end
p total2(1, 10)                 
p total2(1, 10){|num| num ** 2} 

do错过

from.upto(to) do |num|
# block body
end

https://ruby-doc.org/core/doc/syntax/calling_methods_rdoc.html#label-块+参数

向方法发送消息时,块参数总是最后一个。将块发送到使用do的方法。。。end{。。。}

相关内容

最新更新