前提条件检查红宝石

时间:2013-01-18 17:28:57

标签: ruby

对ruby来说很新,因此无法在网上找到这个问题。在ruby中是否有像java checkNotNull()中的任何检查?目前,我正在做

if var_a.nil? || var_b.nil? || var_c.nil?
  raise "var_a, var_b and var_c cannot be nil"
end

我认为这是检查前提条件的一种非常糟糕的方法

2 个答案:

答案 0 :(得分:2)

你可以这样写:

raise "var_a should not be nil" if var_a.nil?

但是这里的代码简化性真的不多。上面的大部分代码仍然是错误信息本身,所以对我来说似乎很好。

答案 1 :(得分:2)

您可以将其缩短为:

raise "var_a, var_b and var_c cannot be nil" if [var_a, var_b, var_c].any?(&:nil?)