File tree Expand file tree Collapse file tree 1 file changed +22
-0
lines changed Expand file tree Collapse file tree 1 file changed +22
-0
lines changed Original file line number Diff line number Diff line change @@ -542,6 +542,28 @@ Comparison:
542542 Hash#merge: 409.6 i/s - 24.00x slower
543543```
544544
545+ ##### ` Hash#merge({}) ` vs ` Hash#dup#merge!({}) ` vs ` {}#merge!(Hash) ` [ code] ( code/hash/merge-vs-dup-merge-bang-vs-merge-bang.rb )
546+
547+ When we don't want to modify the original hash, and we want duplicates to be created
548+
549+ ```
550+ $ ruby -v code/hash/merge-vs-dup-merge-bang-vs-merge-bang.rb
551+ ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux]
552+ Calculating -------------------------------------
553+ Hash#merge({}) 603.000 i/100ms
554+ Hash#dup#merge!({}) 650.000 i/100ms
555+ {}#merge!(Hash) 1.763k i/100ms
556+ -------------------------------------------------
557+ Hash#merge({}) 6.593k (± 7.6%) i/s - 33.165k
558+ Hash#dup#merge!({}) 6.591k (± 5.2%) i/s - 33.150k
559+ {}#merge!(Hash) 17.654k (± 3.0%) i/s - 89.913k
560+
561+ Comparison:
562+ {}#merge!(Hash): 17654.0 i/s
563+ Hash#merge({}): 6592.7 i/s - 2.68x slower
564+ Hash#dup#merge!({}): 6591.2 i/s - 2.68x slower
565+ ```
566+
545567##### ` Hash#sort_by ` vs ` Hash#sort ` [ code] ( code/hash/hash-key-sort_by-vs-sort.rb )
546568
547569To sort hash by key.
You can’t perform that action at this time.
0 commit comments