美文网首页
Ruby 关于方法调用的一些补充

Ruby 关于方法调用的一些补充

作者: changsanjiang | 来源:发表于2017-10-20 20:10 被阅读5次

把数组分解为参数

在调用方法时, 如果以*数组这样的形式指定参数, 这时传递给方法的就不是数组本身, 而是数组的各元素被一次传递给方法. 但需要注意的是, 数组的元素个数必须要和方法定义的参数个数一样.

def foo(a, b, c)
  a + b + c
end

p foo(1, 2, 3)     #=> 6
args1 = [2, 3]
p foo(1, args1)    #=> 6 
args2 = [1, 2, 3]
p foo(*args2)      #=> 6

把Hash作为参数传递

我们用{ ~ }来表示Hash, 将Hash作为参数传递给方法时可以省略{}

def foo(arg)
  arg
end

p foo({"a" => 1, "b" => 2})
p foo("a" => 1, "b" => 2)
p foo(a: 1, b: 2)

其实关键字参数就是模仿这种散列作为参数传递的写法而设计出来的. 使用关键字参数定义方法, 既可以对键进行限制 又可以定义参数的默认值. 因此建议大家在实际编写程序时, 尝试使用关键字参数.

相关文章

  • Ruby 关于方法调用的一些补充

    把数组分解为参数 在调用方法时, 如果以*数组这样的形式指定参数, 这时传递给方法的就不是数组本身, 而是数组的各...

  • iOS performSelector方法总结

    这里需要补充的知识:关于performSelector调用和直接调用方法的区别1、performSelector是...

  • 常用的Ruby方法

    1 当你发送消息到Ruby对象时,Ruby查询与消息同名的方法来调用。Ruby进行方法调用主要有两种方式,obj...

  • From Objective-C to Ruby(3)-方法和块

    方法 定义方法 OC: ruby: 调用方法 OC: ruby: 参数的默认值 OC: 方法的返回值 OC: ru...

  • Ruby 方法的调用

    方法是有对象定义的与该对象相关的操作. 在 Ruby 中, 对象的所有操作都被封装成方法. 简单的方法调用 调用方...

  • ruby 方法的调用

    1、调用的方式 对象.方法名(参数1,参数2, ... ,参数n) 以对象开头,中间隔着句点,后面接着是方法名,方...

  • 我眼中的元编程-方法篇

    Ruby是一门动态语言,动态创建与调用方法是其中一个体现。 动态方法 动态调用方法(动态派发) 动态调用方法,是指...

  • Ruby元编程笔记 - 方法

    Dynamic Method 通过send()去动态调用方法: 在Ruby2.2.2中,send()依然可以调用私...

  • ruby元编程(附录)

    拟态方法 拟态方法就是去掉括号调用方法的方式,会给ruby开发者带来很多语法糖,当然也会给开发者和ruby本身增加...

  • ruby中方法的调用——方法查找

    调用方法时,ruby会做两件事: 1、找到这个方法,这个过程称为方法查找 2、执行这个方法, 当前对象由self充...

网友评论

      本文标题:Ruby 关于方法调用的一些补充

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