• ruby学习总结03


    1.方法的调用

      对象.方法名(参数1,参数2,...)     可以省略参数列表的()

      对象.方法名(参数1,...) do |变量1,变量2,...|            可以省略参数的()

        块内容

       end

       对象.方法名(参数1,...){|变量1,变量2...|             只要在没有参数的时候才可以省略()

        块内容

       }

      可以使用【*数组】作为参数,把数组中的元素依次赋给方法中的参数

      散列作为参数时可以省略{}

    2.方法的分类:实例方法、类方法、函数式方法

      实例方法:以对象为接受者的方法,使用【对象.方法名(参数)】进行调用,在帮助文档中通过【方法:类名】进行标记

      类方法:接受者不是方法而是类本身的方法,使用【类名.方法名(参数)】或者【类名::方法名(参数)】进行调用,在帮助文档中通过【类名.方法名】或者【类名::方法名】进行标记

      函数式方法:不需要接受者的方法,使用【方法名(参数)】调用

      注意:定义带块的方法是,可以使用yield关键字进行占位,如果yield部分有参数,程序会将其当作块变量进行传入。

      def myfoo()

        while true

          yield("ss")

        end

      end

      num=0

      myfoo do |s|

        print s,num

        puts ""

        if num>10

          break

        end

        num+=2

      end

        关键字参数:在方法定义式指定参数的名称和默认值,def 方法名(参数1:值1,参数2:值2),调用时,可以把散列作为参数传入

        为避免调用方法时指定了未定义的参数而报错,可以在参数末尾通过【**参数名】来接受未定义的参数

  • 相关阅读:
    Linux下PHP安装配置MongoDB数据库连接扩展
    Linux下安装配置MongoDB数据库
    解决VMWARE 虚拟机安装64位系统“此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态
    nginx配置多域名
    nginx File not found 错误
    RunLoop与NSTimer的经典面试题
    子线程上的RunLoop运行循环
    主线程上的RunLoop运行循环
    RunLoop运行循环/消息循环
    自动释放池和运行/消息循环
  • 原文地址:https://www.cnblogs.com/lifeone/p/4868867.html
Copyright © 2020-2023  润新知