Ruby 语法学习笔记

变量(variable)

Ruby 中的变量不需要事先声明类型,它是动态类型的语言。可以使用任何字母、数字和下划线。变量名必须以字母或下划线开头。

局部变量(local variable)

局部变量是以一个小写字母或下划线(_)开头。局部变量在声明它的块或方法中可见。如果没有初始化局部变量,则会被赋予 nil 值。

实例:

rubyCopy Code
def hello name = "Ruby" puts "Hello, #{name}!" end hello #输出 "Hello, Ruby!"

全局变量(global variable)

全局变量以 $ 开头,可以在整个程序中访问。

实例:

rubyCopy Code
$global_variable = 10 class Example def print_global puts "全局变量输出:#$global_variable" end end examp = Example.new examp.print_global #输出 "全局变量输出:10"

实例变量(instance variable)

实例变量以 @ 开头,只能在对象的上下文中访问。实例变量的值,在定义它的对象销毁时才会消失。

实例:

rubyCopy Code
class Example def initialize(name) @name = name end def print_name puts "我的名字是 #{@name}" end end examp = Example.new("Ruby") examp.print_name #输出 "我的名字是 Ruby"

类变量(class variable)

类变量以 @@ 开头,可以在类及其子类中访问。

实例:

rubyCopy Code
class Example @@count = 0 def initialize @@count += 1 end def self.print_count puts "创建的 Example 对象数为 #@@count" end end examp1 = Example.new examp2 = Example.new Example.print_count #输出 "创建的 Example 对象数为 2"

控制结构(control structure)

条件语句(if/else)

Ruby 中的条件语句与其他语言类似,使用关键字 if 和关键字 else。条件语句的值必须是布尔值。

实例:

rubyCopy Code
x = 10 if x > 5 puts "x 是大于 5 的" else puts "x 是小于或等于 5 的" end #输出 "x 是大于 5 的"

循环语句(loop)

Ruby 提供了多种循环语句。其中,whileuntil 语句用于判断条件是否为真,for 语句用于迭代集合中的元素。

实例:

rubyCopy Code
# while 循环 $i = 0 $num = 5 while $i < $num do puts "当前数字是 #$i" $i += 1 end # until 循环 $i = 0 $num = 5 until $i >= $num do puts "当前数字是 #$i" $i += 1; end # for 循环 array = [1, 2, 3, 4, 5] for i in array do puts "当前数字是 #{i}" end

方法(method)

Ruby 中方法以 def 关键字开头,后跟方法名称和代码块。方法名称应以小写字母或下划线开头。如果方法名称由多个单词组成,将下一个单词的首字母必须大写。

实例:

rubyCopy Code
def say_hello(name) puts "你好,#{name}!" end say_hello("Ruby") #输出 "你好,Ruby!"

类(class)

类是一组对象的集合。在 Ruby 中,使用关键字 class 定义类。

实例:

rubyCopy Code
class Example def initialize(name) @name = name end def print_name puts "我的名字是 #{@name}" end end examp = Example.new("Ruby") examp.print_name #输出 "我的名字是 Ruby"

以上是 Ruby 语法学习笔记的概览,希望对你学习 Ruby 有所帮助。