Ruby 如果删除了,如何计算删除次数?
我有这样一个代码块:Ruby 如果删除了,如何计算删除次数?,ruby,Ruby,我有这样一个代码块: hash["value"].delete_if{|cell| cell["id"]["name"] == ('foo')} 有一种简单的方法可以计算delete\u if实际执行了多少次?计数器 因为每个整数都是真实的,所以您可以写: count = 0 hash["value"].delete_if{|cell| cell["id"]["name"] == ('foo') && count += 1} 单元格将在计数每次递增时删除,而计数将在单元格[“
hash["value"].delete_if{|cell| cell["id"]["name"] == ('foo')}
有一种简单的方法可以计算delete\u if实际执行了多少次?计数器
因为每个整数都是真实的,所以您可以写:
count = 0
hash["value"].delete_if{|cell| cell["id"]["name"] == ('foo') && count += 1}
单元格
将在计数
每次递增时删除,而计数
将在单元格[“id”][“name”]==(“foo”)每次递增时删除。
例如:
count = 0
true && count += 1
false && count += 1
true && count += 1
false && count += 1
true && count += 1
count
# 3
差异
由于delete\u如果
是破坏性的,您可以简单地比较方法调用前后的大小差异
original_size = hash["value"].size
hash["value"].delete_if{|cell| cell["id"]["name"] == ('foo') && count += 1}
original_size - hash["value"].size
隔断
如果您不仅需要delete\u(如果
已执行)的次数,还需要哪些元素,您可以使用:
柜台
因为每个整数都是真实的,所以您可以写:
count = 0
hash["value"].delete_if{|cell| cell["id"]["name"] == ('foo') && count += 1}
单元格
将在计数
每次递增时删除,而计数
将在单元格[“id”][“name”]==(“foo”)每次递增时删除。
例如:
count = 0
true && count += 1
false && count += 1
true && count += 1
false && count += 1
true && count += 1
count
# 3
差异
由于delete\u如果
是破坏性的,您可以简单地比较方法调用前后的大小差异
original_size = hash["value"].size
hash["value"].delete_if{|cell| cell["id"]["name"] == ('foo') && count += 1}
original_size - hash["value"].size
隔断
如果您不仅需要delete\u(如果
已执行)的次数,还需要哪些元素,您可以使用:
检查大小差异或增加计数器。我可以在delete_if块中增加计数器吗?是的,您可以在其中执行任何操作。在此之前定义计数器。检查大小差异或增加计数器。我可以在delete_if块中增加计数器吗?是的,您可以在其中执行任何操作。在那之前先定义一下计数器。非常感谢你的回复。非常感谢你的回复