当前位置: 首页 > 文档资料 > RGSS 入门教程 >

11、数组

优质
小牛编辑
139浏览
2023-12-01

数组的生成:
举例:

a=[" Allex"," 国家 "," 颂歌 "] 

上面的代码生成一个字符串数组,有3个单元。
通过下标来访问数组单元
举例:

a=[" Allex"," 国家 "," 颂歌 "] 
p a[0] #=>" Allex"
p a[1] #=>" 国家 "
p a[2] #=>" 颂歌 "

当给数组变量赋值时下标按从做到右,从0开始的次序来分配。
数组可以容纳任意类型的对象,即使是同一个数组也可以容纳不同种类的对象。
举例:

a=[2000," Allex", true,1..50] 
p a #=>[2000," Allex", true,1..50]

数组的单元就像变量一样,可以像操作变量一样操作数组单元。
举例:

a = [10, 20, 30] 
a[0] = 100
p a # => [100, 20, 30]

若是下标超出了原来的边界,则自动添加新的数组单元。
举例:

a = [10, 20, 30] 
a[3] = 40
p a # => [10, 20, 30, 40]

Ruby语言的灵活性由此可见一斑。
如果越过了原来的边界,会怎么样:
举例:

a = [10, 20, 30] 
a[5] = 60
p a # => [10, 20, 30, nil, nil, 60]

nil是与True/False一类的常量,表示空。
数组的操作:
数组是 Array 类的实例,所以查看这个类的定义,就可以看出数组如何操作了。
例如想知道数组的元素数量的情况就使用size属性。String 级的 size 属性返回字符串长度,然而 Array 类的 size 属性返回数组的元素数量。数组为空时size=0。
举例:

a=[" Allex"," 国家 "," 颂歌 "]
p a.size # => 3

如果想知道是否包含就是用include?方法:
举例:

a=[" Allex"," 飞行学院 "," 颂歌 "] 
p a.include?(" 飞行学院 ") # => true
p a.include?(" 人间四月天") # => false

也可以使用for来循环访问数组单元:
举例:

a=[" Allex"," 中华人民共和国 "," 颂歌 "] 
for s in a
p s
end

这里用变量 s 来循环访问数组成员。