gpt4 book ai didi

ruby - 通过参数访问对象的 `self`

转载 作者:数据小太阳 更新时间:2023-10-29 07:22:55 24 4
gpt4 key购买 nike

假设我想以这种方式访问​​随机索引处的数组元素:

[1, 2, 3, 4].at(rand(4))

有没有办法像下面这样传递数组的大小?

[1, 2, 3, 4].at(rand(le_object.self.size))

我为什么要那样做?--一位伟人曾说过:科学不是关于为什么,而是关于为什么不。

最佳答案

不推荐,但instance_eval会以某种方式工作:

[1, 2, 3, 4].instance_eval { at(rand(size)) }

你也可以break来自 tap :

[1, 2, 3, 4].tap { |a| break a.at(rand(a.size)) }

有一个开放的feature request添加一个产生 self 并返回 block 结果的方法。如果这使它成为 Ruby,你可以写:

[1, 2, 3, 4].insert_method_name_here { |a| a.at(rand(a.size)) }

关于ruby - 通过参数访问对象的 `self`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34338713/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com