Ruby   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ruby – 使用注入时可以分离出哈希的键和值吗?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
ruby中的哈希函数中调用它们时,可以得到如下所示的键和值很好地分离:
{ :a => 1,:b => 2,:c => 3 }.each do |key,value| 
  puts "key is #{key} and value is #{value}"
end

=========================

key is :a and value is 1
key is :b and value is 2
key is :c and value is 3
=> {:a=>1,:b=>2,:c=>3}

但是,使用注入时似乎不起作用.

{ :a => 1,:c => 3 }.inject(0) do |result,key,value| 
  puts "key is #{key} and value is #{value}"
  result + value
end

=========================

key is [:a,1] and value is
TypeError: nil can't be coerced into Fixnum

在上面的简化示例中,我真的不需要键,@R_687_9447@调用hash.values.inject,但是假设我需要这两个,那么有没有比这个可怕的风格更干净的方式呢?

{ :a => 1,key_and_value| 
  puts "key is #{key_and_value[0]} and value is #{key_and_value[1]}"
  result + key_and_value[1]
end

解决方法

看起来你需要:
{ :a => 1,(key,value)| 
    puts "key is #{key} and value is #{value}"
    result + value
end

大佬总结

以上是大佬教程为你收集整理的ruby – 使用注入时可以分离出哈希的键和值吗?全部内容,希望文章能够帮你解决ruby – 使用注入时可以分离出哈希的键和值吗?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。