我是靠谱客的博主 简单云朵,最近开发中收集的这篇文章主要介绍ruby方法定义中各种符号,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

  1. &:定义命名block 一般我们定义一个带block的方法,是这样:
def test
    yield
end
test{ puts "Hello world"}

但是也可以给其一个名字,我还没搞清楚这样做的意义

def test(&block)
    block.call
end
test { puts "Hello World!"}
  1. *: 定义可变参数-array
def test(a, b, *c) 
    c 
end 
test(1, 2, 4, 5) #=> [4, 5]
  1. **:定义可变参数-hash
def test(a, b, **c)
    c
end
test(1, 2, str: 'hello') #=> {str: 'hello'}
test(1, 2, str: 'hello', name: 'wumz') #=> {str: 'hello', name: 'wumz'}

在ruby方法调用中,*可以把数组转化为参数,&可以把Proc或lambda转化为块

转载于:https://my.oschina.net/u/855913/blog/857053

最后

以上就是简单云朵为你收集整理的ruby方法定义中各种符号的全部内容,希望文章能够帮你解决ruby方法定义中各种符号所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(35)

评论列表共有 0 条评论

立即
投稿
返回
顶部