【发布时间】:2021-10-03 23:49:40
【问题描述】:
我想在没有任何特定键 "d" 的情况下比较所有值的 2 个哈希数组。请帮助以迭代哈希数组中的所有值的方式比较 2 个哈希数组。
A = [
{"a"=>"1000", "b"=>"0", "c"=>"3", "d"=>"1", "e"=>"3", "f"=>"status"},
{"a"=>"2", "e"=>"0", "b"=>"0", "c"=>"4", "d"=>"3", "e="3","f"=>"s-2"},
{"a"=>"0", "b"=>"0", "c"=>"1", "d"=>"3", "e"=>"1", "f"=>"s-01"} ]
B= [
{"a"=>"1000", "b"=>"0", "c"=>"3", "d"=>"1", "e"=>"3", "f"=>"status"},
{"a"=>"2", "e"=>"0", "b"=>"0", "c"=>"4", "d"=>"3", "e="3","f"=>"s-2"},
{"a"=>"0", "b"=>"0", "c"=>"1", "d"=>"3", "e"=>"1", "f"=>"s-01"} ]
我尝试了下面的代码,但我想比较所有没有特定键 "d" 的元素。请帮忙!
A.each do |e_hash|
B.each do |a_hash|
if (a_hash["d"].to_s == e_hash["d"].to_s)
e_hash.each do |k,v|
puts v if k == "d" if (a_hash[k].to_s != v.to_s)
count += 1
else
count
end
end
end
【问题讨论】:
-
比较上述示例哈希时的预期输出是什么?
-
我需要通过比较两个数组来获得匹配对
-
所以在你上面的例子中,你想返回完整的
A数组,因为A和B是一样的?当您发布一个并非所有哈希都相等的示例时,也许会更容易?这样就可以更容易地看出哪些要退回,哪些不能退回。 -
我是新手,所以想知道要比较的代码
标签: arrays json ruby hash compare