gpt4 book ai didi

Ruby:直到一个新对象有一些属性

转载 作者:数据小太阳 更新时间:2023-10-29 08:28:47 25 4
gpt4 key购买 nike

如何重构以下代码以避免重复?

  r = @lots.fetch @lots.keys.sample      
until (neighbours r)
r = @lots.fetch @lots.keys.sample
end

我基本上有一个随机选择的新 r 对象,我需要选择 r 直到所选对象不响应特定条件(邻居r).我如何重构它以避免重复获取 r 并继续获取它直到达到条件?谢谢

最佳答案

begin
r = @lots.fetch @lots.keys.sample
end until neighbours r

请注意,如果条件 neighbors 不太可能出现,则此类代码很容易导致长时间运行(甚至无限)循环。在这种情况下,最好确保每个元素只检查一次,就像在 Michael Kohl's answer 中所做的那样。 .

关于Ruby:直到一个新对象有一些属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8323917/

25 4 0
文章推荐: Ruby:在事件触发器中自动包装方法
文章推荐: ruby - 在 Ruby 中,如何通过 Sinatra 获取 `li` 标记内的链接?
文章推荐: ruby-on-rails - 在 Mac OS X Lion 上安装 Ruby 1.9.3 和 Rails 3.1.3 时出错
文章推荐: ruby - 使用 Watir 将整个 html 导出到文本文档