Proc的两个使用方法
ruby 代码
- def some_mtd1 aproc
- aproc.call
- end
- some_mtd1 lambda { puts "aaaaa" }
-
这个代码等同于下面这个代码段
ruby 代码
- def some_mtd2 &bproc
- bproc.call
- end
- some_mtd2 { puts "aaaaa" }
也等同于下面代码
ruby 代码
- ab = lambda { |x| puts x }
- ab.call 'aaaaa'
c = lambda { |i| puts i }
c = Proc.new { |i| puts i }
c = proc { |i| puts i }
The above 3 statements do the same thing: instantiate a block object. ‘proc’ is an alias for ‘lambda‘ and they work slightly different than ‘Proc.new‘. In Ruby 1.9, ‘proc’ will probably be an alias for ‘Proc.new‘ instead.
分享到:
相关推荐
今天,让我们一起打开这份“Ruby笔记1”的神秘面纱,看看这位勇敢的航海者,在学习Ruby的旅途中,都记录了哪些宝贵的经验和感悟。 首先,"学ruby的感受.txt"这份文档似乎在诉说着学习Ruby的旅程。初学者在面对一门...
本资源“学习 Ruby 的笔记以及 Demo.zip”显然包含了关于Ruby编程的学习资料和一些实际示例代码,旨在帮助初学者理解并掌握Ruby的基础及进阶特性。 首先,让我们深入了解一下Ruby的核心特性: 1. 面向对象:Ruby是...
"ruby笔记2ruby笔记2ruby笔记2"可能是指一系列关于Ruby学习的笔记,这些笔记可能涵盖了Ruby的基础概念、核心特性以及进阶话题。在Ruby的学习过程中,理解和掌握以下几个关键知识点至关重要: 1. **面向对象编程...
2. **方法与块(Methods and Blocks)**:Ruby中的方法是用来封装代码的结构,可以被对象调用执行特定任务。块是Ruby的另一大特色,类似于匿名函数,通常用`do...end`或`{...}`表示,常用于迭代和回调。 3. **变量...
总的来说,通过这个“Ruby 语言教程从小白到入门”的学习,你将能够掌握Ruby的基础知识,包括语法、面向对象编程、异常处理、标准库的使用等。随着对Ruby理解的深入,你将能够编写出更高效、更优雅的代码,进一步...
Ruby 以其简洁、易读的语法和对开发者友好的特性闻名,比如面向对象编程、块(blocks)、元编程等。 在深入讨论之前,让我们先了解一下 Ruby on Rails 的基本概念: 1. **MVC架构**:Rails 遵循 Model-View-...
"表明你正在进行的项目或学习笔记还没有达到预期的完整状态,这很正常,因为学习和开发往往需要时间来完善。 标签"Ruby"则强调了这个项目的核心语言是Ruby,它是Rails的基础。Ruby语言以其简洁、清晰的语法和对...