第四个任务

  • 任务说明

本周要学习的是“方法”(Method),可能你对这个名字感觉陌生,其实这玩意就是函数(Function)。新手学习的话,可以无视这两个东西的区别。在Ruby里面,这两个东西都叫做方法(Method)。

之前已经讲过了方法是如何定义的,下面需要你完成以下知识点的探索

  1. 方法的参数是怎样定义的?如何给参数取一个默认值?
  1. 如何才能让方法接收不确定个数的参数?
  2. 方法是如何返回值的?(提示:有两种返回值的方式)
  3. 方法可以接收哪些数据类型的参数?
  4. 方法可以返回哪些数据类型的参数?
  5. 如何执行一个方法?

研究下面这段代码(可以拿过去运行一下看看效果),弄清楚每一句话的意思,并描述出它调用的过程

def say_hello count=1
if count<11
puts "hello recursion #{count}!"
return say_hello count+1
end
end

say_hello

将以上问题的答案提交到回复中来~

  1. 定义参数: def method_name(args)
    默认值可以定义为: def method_name(args=默认值)
  2. 不确定个数参数(a variable number of arguments)
    def method_name(*args) 过程感觉 参数类似置入数组(array)中.
  3. 方法默认返回值将是最后一个语句的值.
    使用return 可以返回一个或多个值
  4. 数值(Number)字符串(String)数组 (Array)哈希 (Hash)
  5. ????返回值就不是狠明白
  6. 接收者名.do_method(参数)
    默认接收者为self , 也可以为类或module的名称

定义方法say_hello 参数 count 默认值为1
假设参数count小于11
则输出"hello recursion (参数)值"
方法返回值+1
if判断结束
定义结束

你可能感兴趣的:(第四个任务)