如果在数组中找不到项目,则使用默认值

ped*_*ete 3 ruby select

所以我的代码试图从对象数组中选择一个对象,如果找不到该对象,我想创建我的默认值。

lead_time = lead_times.select{|d| LeadTimeProfile.new unless d.day_of_week == day }
Run Code Online (Sandbox Code Playgroud)

然而,据我所知,这并没有给我返回默认的 LeadTimeProfile。

有没有办法做到这一点?还是我做对了?

Kyl*_*yle 5

所以我的代码试图从对象数组中选择一个对象,如果找不到该对象,我想创建我的默认值。

看看Enumerable#find

lead_time = lead_times.find{ |d| d.day_of_week == day } || LeadTimeProfile.new
Run Code Online (Sandbox Code Playgroud)