gpt4 book ai didi

ruby - 比较数组中多个散列的值

转载 作者:太空宇宙 更新时间:2023-11-03 17:24:32 24 4
gpt4 key购买 nike

我知道应该避免 for 循环,我猜想遍历数组的更好方法是代替

for i in 0..array.size-1 do
puts array[i]
end

array.each{ |x| 
puts x
}

但是如果我有一个像这样的散列数组呢

array = [{:value0 => 1, :value1 => 0}, {:value0 => 2, :value1 => 1}, {:value0 => 1, :value1 => 2}]

并想检查 :value0 在所有哈希值中是否唯一.. 直觉上我会做类似的事情

for i in 0..array.size-1 do
_value_buffer = array[i][:value0]
for j in i+1..array.size-1 do
if _value_buffer == array[j][:value0]
puts "whatever"
end
end
end

有更好的方法吗?

最佳答案

为什么不获取所有有问题的值并查看它们是否唯一?

!array.map { |h| h[:value0] }.uniq!

(uniq! 返回 nil 当没有重复项时)

关于ruby - 比较数组中多个散列的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16868175/

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