ruby struct vs hash

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby struct vs hash相关的知识,希望对你有一定的参考价值。

require 'benchmark'
require 'ostruct'

REP = 100000

User = Struct.new(:name, :age)

USER = "User".freeze
AGE = 21

Benchmark.bm 20 do |x|

  x.report 'Struct' do
    REP.times do |index|
       u = User.new({:name => USER, :age => AGE})
       u.name
       u.age
    end
  end

  x.report 'Hash' do
    REP.times do |index|
       t = {:name => USER, :age => AGE}
       t[:name]
       t[:age]
    end
  end
end

以上是关于ruby struct vs hash的主要内容,如果未能解决你的问题,请参考以下文章

ruby struct.rb

在 Ruby 中,如何验证 Struct 的身份?

3-4 8精彩算法集合。struct(C,ruby)

ruby Ruby Hash Manipulation

ruby Ruby Hash深度搜索没有获得堆栈大小异常

ruby map_hash_to_hash.rb