从数组 ruby 中删除所有元素并引发错误

delete all elements from array ruby and raise an error

我对 Ruby 很陌生。我正在进行的一个项目要求我将元素添加到一个数组,该数组的最大容量为 5。

一旦数组已满(即其中有五个对象),我需要 return 一条错误消息并清除数组。正如下面的代码所示,我已经设法分别实现了这两个操作,但我无法将它们组合起来。

@capacity = 5

def full?
    array_count == @capacity 
end

def raise_error_clear
    raise 'Array is full' if full?  
end

如果达到数组的最大容量,我已设法删除数组中的所有元素。

 def raise_error_clear
    array.clear if full?
  end

我希望有人可以帮助并解释如何将这两者结合起来,所以给出了一条错误消息并同时清除了数组。我认为以下代码可以工作,但我收到错误消息。

 def raise_error_clear
    raise 'Airport is full' && array.clear if full?  
  end

你可以把它放在一个 if 条件中。

def raise_error_clear
  if(full?)
    array.clear
    raise 'Airport is full'  
  end
end