ruby 块

作者: biubiudog | 来源:发表于2019-03-21 17:04 被阅读0次

ruby块:

  • 块中的代码总是包含在大括号{}中
  • 块总是从与其具有相同名称的函数调用,eg:如果你的块名为test,那么你要使用函数test来调用这个块。
  • 你可以使用yield来调用块
yield语句

1、基本用法

def test
    puts "在test方法内"
    yield
end
test {puts "你在块内"}

2、带参数的用法
传递有参数的yield语句

def test
    puts "在test方法内"
    yield 1
end
test { | i | puts "你在块#{i}内"}

yield后面跟着参数,可以传多个参数。

  1. 使用&block
    方法的最后一个参数带有&block,可以向该方法传递一个块。
def test(&block)
    block.call
end
test{puts 'hello world'}
def test(a, b, &block)
    block.call a, b
end
test{puts 'hello world'}

4.检查是否有代码块被传入

def test
    if block_given?
        yield
    else
        puts 'no block'
    end
end
test   //未传入代码块
test{puts "a block"}   //传入代码块

相关文章

  • Ruby 块

  • Ruby:块

    首先来看一下块的语法 块的调用方法一般采用以下形式: 再来看一下块的回调 1.yield yield 主要用于隐式...

  • ruby 块

    ruby块: 块中的代码总是包含在大括号{}中 块总是从与其具有相同名称的函数调用,eg:如果你的块名为test,...

  • Ruby块与模块

    Ruby 块 Ruby 有一个块的概念。块由大量的代码组成。您需要给块取个名称。块中的代码总是包含在大括号 {} ...

  • ruby-块

  • Ruby代码块

    Ruby最强大的语言就是他的代码块 [root@master1 ruby]# cat test_block.rb

  • Ruby 块从入门到精通

    “块”是 Ruby 中最有用的特性之一,但是也常常被忽略。开始学习 Ruby 块时,经常被 yield 弄的难以理...

  • Ruby定义带块的方法

    Ruby定义带块的方法 Ruby中do ~end之间的部分称为块,也可以写为{..}。下面看一个简单例子,怎么自定...

  • Ruby 块漫谈 I

    Ruby的块block是ruby的一个重要特性,它能够允许用户将一系列的自定义操作(说白了就是一坨代码)像参数一样...

  • Ruby 块漫谈 II

    上一节我们讲到了Ruby块block的一些大致概念和定义方式,也说到了,块的使用在提升代码抽象和复用方面有很大的帮...

网友评论

      本文标题:ruby 块

      本文链接:https://www.haomeiwen.com/subject/elrcvqtx.html