city=["北京","上海","天津","重庆"]
puts city
city=Array.new
city[0]="北京"
city[1]="上海"
city[2]="天津"
city[3]="重庆"
puts city
city=["北京","上海","天津","重庆"]
city[4]="香港"
puts "数组的长度为:"+city.size.to_s
puts city
puts "第二个元素为:"+city[1]
puts "最后一个元素为:"+city[-1]
city=Array.new
city[2]="香港"
puts "数组的长度为:"+city.size.to_s
puts city
str="深圳"
city_1=%W{北京 上海 天津 重庆 杭州 南京 #{str}}#使用%W{...}进行转换
puts city_1.size
puts city_1
city_2=%w{北京 上海 天津 重庆 杭州 南京 #{str}}#使用%w{...}进行转换
puts city_2
college=["北京大学","清华大学"]
college.unshift("浙江大学","复旦大学") #向数组头部添加元素列表
college.push("南京大学","武汉大学") #向数组尾部添加元素列表
college<<"南开大学" #向数组尾部添加一个元素
puts college.size.to_s
puts college
puts college.pop #删除并获取数组最后一个元素
puts college.shift #删除并获取数组第一个元素
puts college.size.to_s
puts college
puts college[2,3] #截取从索引2开始,长度为3的元素列表
puts college[2..3] #截取从索引2开始,到索引3的元素列表
puts college[2...3] #截取从索引2开始,到索引3(不包括)的元素列表
city_1=["北京","上海","天津"]
city_2=["重庆","香港"]
city_3=city_1+city_2
puts city_3.size.to_s
city_1.concat(city_2)
puts city_1.size.to_s
a=Array.new
p a
a=Array.new(5)
p a
a=Array.new(5,0)
p a
#lang=%W(a b c)
lang=%W{a b c}
p lang
h={"a"=>"b","c"=>"d"}
p h.to_a
s="ab cd efg"
a=s.split(" ")
p a
#p a.include?("ab")
#a.each_with_index do |b,i|
# p b
# p i
#end
#h = {:aaa => "bbb", :ccc => "ddd"}
#h.each_key do |key|
# p h[key]
#end
#h.replace({:a => "b", :c => "d"})
#p h
#t = Time.now
#p t.strftime("%y")
a=[1,2,3,5,7,9]
b=[2,4,6,8,10]
#两数组相连
p (a+b)
#a数组中的元素减去b数组中与之相同的元素
p (a-b)
#(并集)除去两个数组中相同的元素
p (a|b)
#(交集)只有两个数组中都相同的元素
p (p&b)
a=[1,2,3,2]
a.delete(2) #删除所有与X相同的元素
p a
a=[1,2,3,2]
a.delete_at(3) #删除第n个元素
p a
a=[1,2,3,4,5,6,7,8,9,10]
a.slice!(1,5) #删除数组中第几到第几个之间的所有数据
p a
a=[1,2,3,4,5,6,7]
a[1..6]=[4,5,6,7,8,9] #a[n..m]方法可以选择改变数组
p a
a=[1,2,3,4,5,6,7,8,9]
a.each(){|s| p s}
a.each_with_index do |c,i|
puts "#{i} : #{c}"
puts (c+i).to_s
end
a=[[1,2],[2,3],[3,4],6]
p a.flatten
s = [ 1, 2, 3 ] #=> [1, 2, 3]
t = [ 4, 5, 6, [7, 8] ] #=> [4, 5, 6, [7, 8]]
a = [ s, t, 9, 10 ] #=> [[1, 2, 3], [4, 5, 6, [7, 8]], 9, 10]
puts a.flatten #=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
a = [ 1, 2, [3, [4, 5] ] ]
puts a.flatten(1) #=> [1, 2, 3, [4, 5]]
puts a.flatten #=> [1, 2, 3, 4, 5]
a=[1,1,2,2,3,3]
p a.uniq #去掉重复的元素
arr=[9,8,7,1,2,5,3]
p arr.sort #=> [1, 2, 3, 5, 7, 8, 9]
p arr #=> [9, 8, 7, 1, 2, 5, 3]
p arr.sort! #=> [1, 2, 3, 5, 7, 8, 9]
p arr #=> [1, 2, 3, 5, 7, 8, 9]
p arr.sort{|a,b| b<=>a}
[]
[nil, nil, nil, nil, nil]
[0, 0, 0, 0, 0]
["a", "b", "c"]
[["c", "d"], ["a", "b"]]
["ab", "cd", "efg"]
[1, 2, 3, 5, 7, 9, 2, 4, 6, 8, 10]
[1, 3, 5, 7, 9]
[1, 2, 3, 5, 7, 9, 4, 6, 8, 10]
false
[1, 3]
[1, 2, 3]
[1, 7, 8, 9, 10]
[1, 4, 5, 6, 7, 8, 9]
1
2
3
4
5
6
7
8
9
0 : 1
1
1 : 2
3
2 : 3
5
3 : 4
7
4 : 5
9
5 : 6
11
6 : 7
13
7 : 8
15
8 : 9
17
[1, 2, 2, 3, 3, 4, 6]
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
1
2
3
4
5
[1, 2, 3]
[1, 2, 3, 5, 7, 8, 9]
[9, 8, 7, 1, 2, 5, 3]
[1, 2, 3, 5, 7, 8, 9]
[1, 2, 3, 5, 7, 8, 9]
[9, 8, 7, 5, 3, 2, 1]
相关推荐
通过本文,我们深入了解了 Ruby 数组的基本概念、创建方式以及常用的操作方法。Ruby 数组作为一种灵活的数据结构,在实际开发中扮演着重要角色,无论是处理数据还是实现特定逻辑功能,都离不开对数组的有效管理和...
ruby数组处理大全 如函数名称 说明 示例 &数组与,返回两数组的交集 [1,2] & [2,3] =>[2] *复制数组n次 [1,2]*2 => [1,2,1,2] +返回两数组的并集,但不排除重复元素 [1,2]+[2,3] =>[1,2,2,3] 追加元素,但不...
在Ruby数组中,元素可以通过索引来访问和操作,索引通常从0开始。 ### 数组创建 Ruby提供多种创建数组的方法。最常见的是通过方括号`[]`来创建,例如: ```ruby arr = [1, 2, 3, "four", true] # 创建包含不同类型...
如果要从键盘或文件中读取内容列表,这是创建变量的一种常见方法。 在下面的示例程序中,使用array命令和赋值运算符创建一个空数组。从键盘上读取三个字符串(字符的有序序列)并“pushed”或添加到数组的末尾。 #!/...
Ruby中的数组是动态数组,存储的数据不用限定类型,数组的长度是根据存储需要动态扩展,所以,在进行数据定义的时候,只用用最简单的方式new一个Array对象就可以了,可以使用以下几种方式: 代码如下: arr1=[] #最...
Ruby数组是有序的,任何对象的??整数索引的集合。每个数组中的元素相关联,并提到的一个索引。 数组下标从0开始,如C或Java。负数索引假设数组末尾—也就是说,-1表示最后一个元素的数组索引,-2是数组中最后一个...
下面我们将深入探讨Ruby数组的各种操作。 1. **创建数组**:Ruby数组的创建非常直观,只需在方括号`[]`内列出元素,并用逗号隔开即可。例如,`ary = [1, 2, "3"]` 创建了一个包含整数和字符串的数组。 2. **数组...
二进制搜索Ruby的数组 二进制搜索是Ruby的Array类中缺少的一种非常方便的算法。 如果我们知道绝对肯定的是,我们正在与正在工作的数组排序,你可以使用二进制搜索通过数组得多的速度远远超过线性搜索,这与指数进行...
数组是存储数据的一种容器,在Ruby中,数组中存储的数据可以是任何类型的数据;这和JAVA不同,在JAVA中,数组是存储同一类型数据的结构。 1. 在Ruby中如何定义数组呢? 使用[ ]来框住元素,而元素之间则使用”,”...
Ruby的数组(arrays)和散列表(hashes)是被索引的收集(indexed collections). ...有了数组对象,在方括号之间提供索引便可以访问单个元素,如下例所示,注意Ruby数组的索引从零开始。 a=[1,'cat',3.14] #有三个元
这行代码是必要的,因为它使得当前脚本能够使用 Ruby 的标准库 `date` 中定义的类和方法。 2. 获取指定月的最后一天: ```ruby day = Date.civil(2008, 2, -1) ``` 这里使用了 `Date.civil` 方法来创建一个 `Date` ...
### Ruby 方法详解 #### Ruby 语言简介 Ruby 是一种动态、面向对象的脚本语言,以其简洁、清晰的语法著称。它支持多种编程范式,包括面向对象、命令式和函数式编程,并且拥有强大的元编程能力。Ruby 的设计哲学强调...
这个标题提到的"Ruby-ActiveModel的自定义验证用于检查数组是否包含在另一个中"是一个具体的验证场景,常常在数据校验时会用到,比如确保用户输入的数据符合特定的范围或者限制。 自定义验证是ActiveModel的一个...
Ruby的数组可以通过转换为Hash,但这要求数组必须包含偶数个元素。具体操作时,使用星号(*)操作符配合Hash构造函数可以实现数组到Hash的转换。 在Ruby的方法中,如果方法名末尾带有感叹号(!),表示该方法会改变原有...
书中会介绍变量、数据类型(如字符串、整数、浮点数、布尔值、数组、哈希)、控制结构(如条件语句if/else,循环for、while、until),以及函数和方法的定义与调用。 2. **面向对象编程**:Ruby的核心特性之一就是...
3. **Ruby Select**: Select方法用于过滤数组中的元素,根据提供的条件返回满足条件的元素的新数组。例如,找出所有偶数: ```ruby numbers = [1, 2, 3, 4, 5] even_numbers = numbers.select { |n| n.even? } ...
在Ruby的标准库中,`Array`类提供了丰富的实例方法和类方法来处理数组。 ##### 1.1 Class methods **1.1.1 []** 用于创建一个新的数组。例如: ```ruby arr = [1, 2, 3] ``` **1.1.2 new** 创建一个新数组。...