Wind-Eagle

No pain,no gain!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

一步一步学Ruby系列(二):Ruby中的函数

Posted on 2008-12-16 12:13  Andrew Yin  阅读(419)  评论(0编辑  收藏  举报

一、无参函数:

 

irb(main):010:0> def h
irb(main):
011:1> puts "Hello World!"
irb(main):
012:1> end
=> nil

irb(main):
013:0> h
Hello World!
=> nil
irb(main):
014:0> h()
Hello World!
=> nil

在 Ruby 里调用函数就像提起 Ruby 的名字一样简单。如果函数不需要接受参数,您只要提到它就够了。您可以加一对括号,但不是必需的。

二、有参函数

irb(main):015:0> def h(name)
irb(main):
016:1> puts "Hello #{name}!"
irb(main):
017:1> end
=> nil
irb(main):0
18:0> h("Matz")
Hello Matz!
=> nil

通过#{parameterName}来引用参数。等等,似乎参数没有参数类型哦。是的,这就是鼎鼎大名的“鸭子型”的体现。

三、默认参数

irb(main):019:0> def h(name = "World")
irb(main):
020:1> puts "Hello #{name.capitalize}!"
irb(main):
021:1> end
=> nil
irb(main):
022:0> "chris"
Hello Chris!
=> nil
irb(main):
023:0> h
Hello World!
=> nil

 

参数可以用括号来指定,也可以直接指定。

当有参数有默认值的时候,可以不指定参数,就像无参函数一样调用。

问题:

参数的返回值问题。

多参数的函数的调用问题。

多参数的函数中,默认参数的位置是否必须位于最后?

好了,下一篇讲Ruby中的类。