目录搜索
Ruby用户指南3、开始4、简单的例子5、字符串6、正则表达式7、数组8、回到那些简单的例子9、流程控制10、迭代器11、面向对象思维12、方法13、类14、继承15、重载方法16、访问控制17、单态方法18、模块19、过程对象20、变量21、全局变量22、实变量23、局部变量24、类常量25、异常处理:rescue26、异常处理:ensure27、存取器28、对象的初始化29、杂项RGSS入门教程1、什么是RGSS2、开始:最简单的脚本3、数据类型:数字4、数据类型:常量与变量5、数据类型:字符串6、控制语句:条件分歧语句7、控制语句:循环8、函数9、对象与类10、显示图片11、数组12、哈希表(关联数组)13、类14、数据库15、游戏对象16、精灵的管理17、窗口的管理18、活动指令19、场景类Programming Ruby的翻译Programming Ruby: The Pragmatic Programmer's Guide前言RoadmapRuby.new类,对象和变量容器Containers,块Blocks和迭代Iterators标准类型深入方法表达式Expressions异常,捕捉和抛出(已经开始,by jellen)模块基本输入输出线程和进程当遭遇挫折Ruby和它的世界Ruby和Web开发Ruby TkRuby 和微软的 Windows扩展RubyRuby语言 (by jellen)类和对象 (by jellen)Ruby安全反射Reflection内建类和方法标准库OO设计网络和Web库Windows支持内嵌文档交互式Ruby Shell支持Ruby参考手册Ruby首页卷首语Ruby的启动环境变量对象执行结束时的相关处理线程安全模型正则表达式字句构造程序变量和常数字面值操作符表达式控制结构方法调用类/方法的定义内部函数内部变量内部常数内部类/模块/异常类附加库Ruby变更记录ruby 1.6 特性ruby 1.7 特性Ruby术语集Ruby的运行平台pack模板字符串sprintf格式Marshal格式Ruby FAQRuby的陷阱
文字

    函数的概念: 

我们把事先编好的,能够解决或者说处理某种情况的功能的集合叫做函数。不必在意概念,用得多了自然就明白。其实我们一直在使用的p,print就是函数的一种,下面介绍一个很有用的函数,随机函数rand():

rand(x)返回0-(xx-1)范围内的随机数,例如:

p rand(100) 

返回的数字在0-99范围内。

我们也可以设计自己的函数以便增加我们需要的功能,更多的时候,我们大多数时间是在跟函数打交道。

函数的声明:

函数的名字基本上和变量的名字有着相同的限制,例外的情况是,函数可以在名字的最后添加?或!符号,这种符号有着特殊的用处,以后会讲到。

函数的声明要用def..end语句,形如:
def 函数名字
语句
end

我们用rand函数来设计一个自己的函数bet():

def bet
  if rand(6)>3
     return "大"
  else
     return "小"
  end
end 
print bet
 
这里的return表示函数返回的值,如果省略return也可以,但最好带上,能够使程序可读性更好。

我们给bet函数增加参数:

def bet(x)
  if rand(x)>3
     return "大"
  else
     return "小"
  end
end 
print bet(7) 

还可以为参数设置默认值:

def bet(x=7)
  if rand(x)>3
     return "大"
  else
     return "小"
  end
end 
print bet   #这和print bet(7)一样
 
函数可以有很多参数:

def bet(x,y,z)
if rand(x)>3 and rand(y)>3 and rand(z)>3
return "大"
else
return "小"
end
end 
print bet(7,6,10)
 

重定义函数:

如果定义了两次相同的函数,则只有后面定义的函数有效,而先前的定义就无效了。

def hello
return" 您好 "
end

def hello
return" 晚安 "
end

p hello #=>" 晚安 " 
版权声明:RUBY文档中心的所有文章标明[原创]的均为本站作品,版权属RUBY中文化计划,若转载请注明;标明[翻译]的其外文版权归原作者,译文版权属RUBY中文化计划;标明[转贴]的,若原作者感到侵犯了他的著作权,那么请及时跟主持人联系,我们会尽快更正。  
上一篇:下一篇: