irb(main):022:0* 1.next
=> 2
irb(main):023:0> "a".next
=> "b"
irb(main):024:0> "1".next
=> "2"
irb(main):025:0>
ruby的next方法,多方便,尤其是"1"
性能比较:
require 'benchmark'
n=(1..1000000).to_a
def num_next(first,last)
while first != last
first=first.next
end
end
def num_join(first,last)
while first != last
first+=1
end
end
Benchmark.bm do |bm|
bm.report("each") do
n.each do |d|
d
end
end
bm.report("next") do
num_next(1,1000000)
end
bm.report(" + ") do
num_join(1,1000000)
end
end
输出:
user system total real
each 0.219000 0.000000 0.219000 ( 0.218000)
next 0.266000 0.000000 0.266000 ( 0.266000)
+ 0.312000 0.000000 0.312000 ( 0.313000)
性能还不错,向ruby脱帽致敬!
分享到:
相关推荐
关于使用ruby对excel进行操作的内容,比较详细。
在上述例子中,`tr`方法的执行时间大约是`gsub`的四分之一,因此在需要频繁替换字符的情况下,优先选择`tr`。 其次,字符串操作的效率也值得注意。在连接字符串时,应尽量使用`操作符,而不是`+=`。`操作符通常比`+...
Ruby支持类的继承,允许一个类(子类)继承另一个类(父类)的属性和方法。子类使用`符号指定其父类,如下所示: ```ruby class Student def study puts "I'm studying hard!" end end ``` 在这个例子中,`...
ruby ,英文资料
Ruby是一种面向对象的编程语言,以其简洁的语法和强大的功能深受开发者喜爱。在Ruby的世界里,函数式编程的概念也被巧妙地融入其中,这体现在“Functo”这样的库上。标题提到的“Ruby-Functo”就是Ruby中实现可组合...
这是一本绝对不会让初学者失望的Ruby入门书。 ——Ruby之父 松本行弘 本书为日本公认的最好的Ruby入门教程。 松本行弘亲自审校并作序推荐。 本书支持最新的Ruby 2.0, 也附带讲解了可运行于1.9版本的代码, ...
这本书的描述简洁明了,"Best of Ruby Quiz"直接点出了其核心内容——一系列关于Ruby的精彩挑战和问题解答,旨在提升编程技能。 Ruby是一种面向对象的、动态类型的编程语言,由日本的松本行弘(Yukihiro Matsumoto...
Ruby是一种面向对象的脚本语言,以其简洁、优雅的语法和强大的编程能力而闻名。它由日本人松本行弘(Yukihiro Matsumoto)在1995年设计并开发,旨在提供一种更人性化、高效的编程体验。Ruby强调代码的可读性和可维护...
Ruby的枚举通常指的是枚举类(Enum Class),这是一种自定义枚举类型的方法,允许我们创建具有特定行为的枚举。在本篇文章中,我们将深入探讨Ruby如何实现面向对象的枚举以及它在实际开发中的应用。 首先,让我们...
Ruby Ruby Ruby Ruby Ruby Ruby
Ruby是一种面向对象的脚本语言,它以其简洁、优雅的语法和强大的编程能力而闻名。在Windows环境下设置和使用Ruby工具对于开发者来说是一项基础任务。本文将深入探讨Ruby在Windows平台上的安装、配置以及基本使用。 ...
1. 面向对象:Ruby 是一种纯面向对象的语言,所有数据都是对象,这简化了编程。 2. 易于阅读和编写:Ruby 的语法鼓励编写清晰、简洁的代码,类似于自然语言。 3. Rails 框架:Ruby on Rails 提供了一个强大的 web ...
`order_query`库就是为了解决这个问题而设计的,它提供了一种方便的方法来在一个查询中查找上一个或下一个Active Record对象。 `order_query`库的主要功能是在已排序的Active Record集合中找到指定记录的相邻记录。...
这份"ruby 中文文档 必备资料"压缩包包含了一份非常重要的资源——"ruby中文文档.chm",这是一份详尽的Ruby语言指南,对于学习和精通Ruby编程语言来说是不可或缺的。 首先,Ruby语言的基础知识包括变量、数据类型和...
5. **符号(Symbol)**:Ruby引入了一种特殊的不可变对象——符号,用于表示唯一的标识符,节省内存。 6. **GVL(全局解释器锁)**:在Ruby 2.1.0版本中,虽然已经对GVL进行了优化,但仍然存在,这限制了并发执行的...
Ruby是一种面向对象的、动态类型的编程语言,以其简洁、优雅的语法和强大的元编程能力而闻名。在这个"Ruby-一个Ruby的例子"中,我们将探讨Ruby的基础知识,以及如何通过具体的代码示例来理解其核心特性。 首先,...
Ruby是一种面向对象的、动态类型的编程语言,以其简洁、优雅的语法著称。在这个"Ruby基础语法使用方法全套讲解,风格讲解指南大全"中,我们将深入探讨Ruby的核心特性,包括变量、数据类型、控制结构、函数、类和模块...
3.5.1 文字标注标记——ruby 60 3.5.2 声明变量标记——var 61 3.5.3 忽视HTML标记 ——plaintext、xmp 62 3.6 小结 63 3.7 习题 63 第4章 使用列表 65 教学录像:35分钟 4.1 列表的标记 66 4.2...
ruby2ruby 提供一些用来根据 RubyParser 兼容的 Sexps 轻松生成纯 Ruby 代码的方法。可在 Ruby 中轻松实现动态语言处理。 标签:ruby2ruby