0

我有一个要与对象数组进行比较的对象。如果两个特定属性相等,我想停止循环。我怎样才能做到这一点,或者我怎样才能以更好的 Rails 方式做到这一点?

@item #item to compare with


        @items.each do |item|
            if ( (item.att1 == @item.att1) && (item.att3 == @item.att3) ) 
                is_equal(item.id) 
            else
                #do something
            end
        end
4

1 回答 1

0

使用数组的find方法:

matched_item = @items.find { | item | item.att1 == @item.att1 && item.att1 == @item.att1 }
is_equal(matched_item.id)
于 2013-05-02T16:58:33.557 回答