Benchmark

1,length > 0和blank?和emtpy?
>> Benchmark.bm do |x|
?> x.report{10000.times{[].blank?}}
>> x.report{10000.times{[].empty?}}
>> x.report{10000.times{[].length > 0}}
>> end
user system total real
0.010000 0.000000 0.010000 ( 0.006934)
0.010000 0.000000 0.010000 ( 0.008550)
0.010000 0.000000 0.010000 ( 0.009955)
=> true

2,eval和__send
>> Benchmark.bm do |x|
?> x.report{10000.times{1+2}}
>> x.report{10000.times{1.__send__(:+,2)}}
>> x.report{10000.times{eval("1+2")}}
>> end
user system total real
0.010000 0.000000 0.010000 ( 0.011300)
0.000000 0.000000 0.000000 ( 0.013654)
0.020000 0.000000 0.020000 ( 0.014717)
=> true

养成良好的小习惯吧,如果在大数组里出现这些代码,速度还是有一点点的影响的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值