`
wangsir_81
  • 浏览: 21252 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Ruby 数组方法

 
阅读更多

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]

分享到:
评论

相关推荐

    10Ruby 数组.docx

    通过本文,我们深入了解了 Ruby 数组的基本概念、创建方式以及常用的操作方法。Ruby 数组作为一种灵活的数据结构,在实际开发中扮演着重要角色,无论是处理数据还是实现特定逻辑功能,都离不开对数组的有效管理和...

    ruby 数组处理大全.doc

    ruby数组处理大全 如函数名称 说明 示例 &数组与,返回两数组的交集 [1,2] & [2,3] =&gt;[2] *复制数组n次 [1,2]*2 =&gt; [1,2,1,2] +返回两数组的并集,但不排除重复元素 [1,2]+[2,3] =&gt;[1,2,2,3] 追加元素,但不...

    ruby数组

    在Ruby数组中,元素可以通过索引来访问和操作,索引通常从0开始。 ### 数组创建 Ruby提供多种创建数组的方法。最常见的是通过方括号`[]`来创建,例如: ```ruby arr = [1, 2, 3, "four", true] # 创建包含不同类型...

    Ruby创建数组方法总结

    如果要从键盘或文件中读取内容列表,这是创建变量的一种常见方法。 在下面的示例程序中,使用array命令和赋值运算符创建一个空数组。从键盘上读取三个字符串(字符的有序序列)并“pushed”或添加到数组的末尾。 #!/...

    Ruby数组(Array)学习笔记

    Ruby中的数组是动态数组,存储的数据不用限定类型,数组的长度是根据存储需要动态扩展,所以,在进行数据定义的时候,只用用最简单的方式new一个Array对象就可以了,可以使用以下几种方式: 代码如下: arr1=[] #最...

    Ruby中数组的一些相关使用方法

    Ruby数组是有序的,任何对象的??整数索引的集合。每个数组中的元素相关联,并提到的一个索引。 数组下标从0开始,如C或Java。负数索引假设数组末尾—也就是说,-1表示最后一个元素的数组索引,-2是数组中最后一个...

    ruby 数组使用教程

    下面我们将深入探讨Ruby数组的各种操作。 1. **创建数组**:Ruby数组的创建非常直观,只需在方括号`[]`内列出元素,并用逗号隔开即可。例如,`ary = [1, 2, "3"]` 创建了一个包含整数和字符串的数组。 2. **数组...

    binary_search:用于Ruby数组的本机和纯Ruby二进制搜索和索引方法

    二进制搜索Ruby的数组 二进制搜索是Ruby的Array类中缺少的一种非常方便的算法。 如果我们知道绝对肯定的是,我们正在与正在工作的数组排序,你可以使用二进制搜索通过数组得多的速度远远超过线性搜索,这与指数进行...

    Ruby简明教程之数组和Hash介绍

    数组是存储数据的一种容器,在Ruby中,数组中存储的数据可以是任何类型的数据;这和JAVA不同,在JAVA中,数组是存储同一类型数据的结构。 1. 在Ruby中如何定义数组呢? 使用[ ]来框住元素,而元素之间则使用”,”...

    Ruby中的数组和散列表的使用详解

    Ruby的数组(arrays)和散列表(hashes)是被索引的收集(indexed collections). ...有了数组对象,在方括号之间提供索引便可以访问单个元素,如下例所示,注意Ruby数组的索引从零开始。 a=[1,'cat',3.14] #有三个元

    rubyonrails+Ruby+取得指定月日期数方法

    这行代码是必要的,因为它使得当前脚本能够使用 Ruby 的标准库 `date` 中定义的类和方法。 2. 获取指定月的最后一天: ```ruby day = Date.civil(2008, 2, -1) ``` 这里使用了 `Date.civil` 方法来创建一个 `Date` ...

    06Ruby 方法.docx

    ### Ruby 方法详解 #### Ruby 语言简介 Ruby 是一种动态、面向对象的脚本语言,以其简洁、清晰的语法著称。它支持多种编程范式,包括面向对象、命令式和函数式编程,并且拥有强大的元编程能力。Ruby 的设计哲学强调...

    Ruby-ActiveModel的自定义验证用于检查数组是否包含在另一个中

    这个标题提到的"Ruby-ActiveModel的自定义验证用于检查数组是否包含在另一个中"是一个具体的验证场景,常常在数据校验时会用到,比如确保用户输入的数据符合特定的范围或者限制。 自定义验证是ActiveModel的一个...

    Ruby自学笔记

    Ruby的数组可以通过转换为Hash,但这要求数组必须包含偶数个元素。具体操作时,使用星号(*)操作符配合Hash构造函数可以实现数组到Hash的转换。 在Ruby的方法中,如果方法名末尾带有感叹号(!),表示该方法会改变原有...

    笨方法学ruby-中文版

    书中会介绍变量、数据类型(如字符串、整数、浮点数、布尔值、数组、哈希)、控制结构(如条件语句if/else,循环for、while、until),以及函数和方法的定义与调用。 2. **面向对象编程**:Ruby的核心特性之一就是...

    Ruby Data-Processing ruby数据处理

    3. **Ruby Select**: Select方法用于过滤数组中的元素,根据提供的条件返回满足条件的元素的新数组。例如,找出所有偶数: ```ruby numbers = [1, 2, 3, 4, 5] even_numbers = numbers.select { |n| n.even? } ...

    ruby 标准库

    在Ruby的标准库中,`Array`类提供了丰富的实例方法和类方法来处理数组。 ##### 1.1 Class methods **1.1.1 []** 用于创建一个新的数组。例如: ```ruby arr = [1, 2, 3] ``` **1.1.2 new** 创建一个新数组。...

Global site tag (gtag.js) - Google Analytics