当前位置:  开发笔记 > 编程语言 > 正文

迭代序列并一次更改一个对象的最佳方法(Ruby)

如何解决《迭代序列并一次更改一个对象的最佳方法(Ruby)》经验,为你挑选了1个好方法。

我是红宝石的新手,觉得我仍然以C的方式做很多事情:-).假设您有一个对象数组(问题:has_many =>:answers).我想迭代所有答案,如果某些答案符合条件,请更改答案属性.目前我正在做如下:

def iterate_and_do_stuff
   for (a in self.answers)
      if(a.somecriteria==true)
         a.some_attr=some_val
      end
   end
end

这样做的其他方法是什么?块,循环等?

请adivce.

谢谢.



1> Pesto..:

使用Array#each:

self.answers.each {|a| a.some_attr = some_val if a.some_criteria}

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有