gpt4 book ai didi

ruby - 循环迭代 - 检查是否没有产生任何项目

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

我有一个函数,它产生的项目很少。我正在使用

迭代它们
my_function() do |item|
... some code here ...
end

有没有一种很酷的方法来检查迭代器是否不返回任何项目?像这样的东西:

my_function() do |item|
... some code here ...
else
puts "No items found"
end

最佳答案

通常迭代的函数返回被迭代的可枚举(例如数组)。如果你这样做,你可以测试这个返回值是否为空:

if my_function(){ |item| … }.empty?
puts "nothing found!"
end

当然,如果您的 block 在多行上,那么写成这样可能更有意义:

items = my_function() do |item|
# …
end
puts "Nothing found!" if items.empty?

如果创建迭代的可枚举对象不容易或效率不高,那么您只需修改函数以在末尾返回一个 bool 值,指示您是否迭代了任何内容。

关于ruby - 循环迭代 - 检查是否没有产生任何项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16963418/

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