一、Ruby 类中的变量(Ruby 提供了四种类型的变量)
局部变量:局部变量是在方法中定义的变量。局部变量在方法外是不可用的。在后续的章节中,您将看到有关方法的更多细节。局部变量以小写字母或 _ 开始。
实例变量:实例变量可以跨任何特定的实例或对象中的方法使用。这意味着,实例变量可以从对象到对象的改变。实例变量在变量名之前放置符号(@)。
类变量:类变量可以跨不同的对象使用。类变量属于类,且是类的一个属性。类变量在变量名之前放置符号(@@)。
全局变量:类变量不能跨类使用。如果您想要有一个可以跨类使用的变量,您需要定义全局变量。全局变量总是以美元符号($)开始。
二、Ruby 变量
变量是持有可被任何程序使用的任何数据的存储位置。
Ruby 支持五种类型的变量。
一般小写字母、下划线开头:变量(Variable)。
$开头:全局变量(Global variable)。
@开头:实例变量(Instance variable)。
@@开头:类变量(Class variable)类变量被共享在整个继承链中
大写字母开头:常数(Constant)。
三、ruby循环
for i in 0..5==(0..5).each do |i|
四、类方法
当方法定义在类的外部,方法默认标记为 private。另一方面,如果方法定义在类中的,则默认标记为 public。
方法默认的可见性和 private 标记可通过模块(Module)的 public 或 private 改变。
当你想要访问类的方法时,您首先需要实例化类。然后,使用对象,您可以访问类的任何成员。
alias foo bar: bar 定义了别名为 foo
undef bar:取消名为 bar的方法定义
五、注释
# 这是一个单行注释。
=begin
这是一个多行注释。
可扩展至任意数量的行。
但 =begin 和 =end 只能出现在第一行和最后一行。
=end
六、
类中嵌入模块,可以在类中使用 include 语句
第三方的程序想要使用任何已定义的模块,则可以简单地使用 Ruby require 语句来加载模块文件
七、迭代器
each 和 collect
each语法(each 迭代器返回数组或哈希的所有元素):
collection.each do |variable|
code
end
collect语法(collect 迭代器返回集合的所有元素)
collection = collection.collect
八、正则表达式
一种介于斜杠之间或介于跟在 %r 后的任意分隔符之间的模式,例如:
/pattern/
/pattern/im # 可以指定选项
%r!/usr/local! # 使用分隔符的正则表达式
网友评论