Ruby中没有一元运算符
我收到一个unexpected keyword_end
错误,我不知道为什么:
def add(meeting)
if conflict?(meeting)
puts "There's conflict with another meeting!"
else
if @meetings.empty?
@meetings.push(meeting)
else
i = 0
@meetings.each do |m|
if m > meeting
@meetings.insert(i, meeting)
break
end
i++
end
end
end
end
如果我删除each
循环,就没有问题。我尝试过while
循环和until
循环,但在所有循环中都出现了相同的错误。
有人能解释一下我做错了什么吗?
++
。你应该有:
i += 1
在第14行中,您添加了两个数字,但忘记传递第二个数字,相反,解析器遇到了end
。因此,错误消息有点误导:这并不是说解析器不希望在那里出现end
,而是希望在end
之前看到一些。