1. 首页
  2. 教程
  3. 测试开发
  4. Ruby教程

Ruby变量

Ruby变量是用于保存在程序中使用的数据的位置。 每个变量都有不同的名称。 这些变量名称基于一些命名约定。 不像其他编程语言,在Ruby中不必先声明变量再使用。 只需要一个前缀来指示它就可以了。

Ruby中有四种类型的变量:

  • 局部变量
  • 类变量
  • 实例变量
  • 全局变量

1. 局部变量

局部变量名以小写字母或下划线(_)开头。变量可在它的初始化块内或范围内访问。代码块完成后,变量就不在作用域存在了。

当未初始化的局部变量被调用时,它们被解释为对没有参数的方法的调用。

2. 类变量

类变量名以@@符号开头。需要在使用前进行初始化。 类变量属于整个类,可以从类中的任何位置访问。 如果在一个实例中该值将被更改,则它将在每个实例中被改变。

类变量由类的所有后代共享,未初始化的类变量将导致错误。

示例:

创建一个Ruby文件:class-variables.rb,编写以下代码 –

在上面的例子中,@@no_of_states是一个类变量。

执行上面代码,输出结果如下:

3. 实例变量

实例变量名以@符号开头。 它属于类的一个实例,可以从方法中的类的任何实例访问。 它们只能访问一个特定的类的实例。

它们不需要初始化,未初始化的实例变量的值是:nil 。

示例:

创建一个Ruby文件:instance-variables.rb,编写以下代码 –

执行上面代码,输出结果如下:

4. 全局变量

全局变量名以$号开头。在全局范围内可访问,可以从程序中的任何位置访问它。

未初始化的全局变量的值会被初始化为:nil。建议不要使用全局变量,因为它们使程序变得秘密和复杂。

Ruby中有一些预定义的全局变量。

示例:

创建一个Ruby文件:global-variables.rb,编写以下代码 –

执行上面代码,输出结果如下:

总结

以下是上面几种类型变量的概括 –

特性 局部变量 全局变量 实例变量 类变量
范围 仅限于初始化块内 全局范围 属于一个类的一个实例 仅限于创建它们的整个类
命名约定 以小写字母或下划线(_)开头 $符号开头 @符号开头 @@符号开头
初始化 不需要初始化,未初始化的局部变量被解释为没有参数的方法 不需要初始化,未初始化的全局变量的值为:nil 不需要初始化,未初始化的实例变量的值为:nil 需要在使用前进行初始化,未初始化的全局变量会导致错误。

原创文章,作者:若木成林,如若转载,请注明出处:https://www.chinaztest.com/1314.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:983512074@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息