一步一步学Ruby(十八):数组

简介:
一、数组定义和基本操作

     1. 数组的定义和其它语言一样,Ruby里的数组并不限定类型.

x=[1,2,3,4]
puts x[2]       #输出3
x[2]+=1
puts x[2]       #输出 4
x[2]="Jack"*3   #输出 JackJackJack
  2. 数组可以不设初始值,可以使用<< 和pop的操作,后进先出
x=[]
x<<"Jack"
x<<"Tom"
x<<"Crystal"
puts x[2]           #输出 Crystal
x.pop
puts x[x.length-1]  #输出 Tom

    3. 可以把数组连接在一起

x=["Jack","Better","Man"]
puts x.join
#输出 JackBetterMan
x=["Jack","Better","Man"]
puts x.join(', ')
#输出: Jack, Better, Man
  4. 字符串拆分为数组
puts "Jack is better man".scan(/\w/).join(",")
#输出 J,a,c,k,i,s,b,e,t,t,e,r,m,a,n
puts "www.cnblogs.com".split(/\./).inspect
#输出:["www", "cnblogs", "com"]
Insepct是显示一个对象的变量,用P也可以
http://blog.12spokes.com/articles/2008/03/15/
ruby-tip-stop-using-puts-object-inspect%E2%80%94use-p-instead
p "Jack Tom Crystal".split(/\s/)
#输出 ["Jack", "Tom", "Crystal"]
  1.数组迭代
[1,"jack",2.0, 4].each{|x| print x.to_s+"!"}
#输出 1!jack!2.0!4!
p [1,"jack",2.0, 4].collect{|x| x*2}
#输出: [2, "jackjack", 4.0, 8]
a=[1,2,3]
b=["jack","crystal"]
c=a+b
p c
#输出: [1, 2, 3, "jack", "crystal"]
a=[1,2,3,4,5]
b=[2,3]
c=a-b
p c
#输出 [1, 4, 5]
x=[]
puts "It's empty" if x.empty?
#输出: It's empty
x=[1,2,3]
puts x.include?("jack") 
#输出:false
puts x.include?(2)
#输出: true
x=[1,2,3,4]
puts x.first
#output: 1
puts x.last
#output: 4
puts x.first(2).join("-")
#output: 1-2
puts x.last(2).join("-")
#output: 3-4
x=[1,2,3,4]
puts x.reverse.inspect
#output:[4, 3, 2, 1]

未经同意,禁止转载

本文转自敏捷的水博客园博客,原文链接http://www.cnblogs.com/cnblogsfans/archive/2009/02/23/1396844.html如需转载请自行联系原作者


王德水

相关文章
|
7月前
|
Ruby
|
7月前
|
Ruby 索引
|
7月前
|
存储 Java Ruby
|
索引 Ruby
【Ruby on Rails全栈课程】2.6 ruby的数据结构--数组(Array)
数组是一个集合,但是不仅仅是数字的集合,可以是任何对象(String、 Integer、 Fixnum、 Hash、 Symbol 等对象)的集合。数组的索引是从0开始的有序整数,可以通过正数索引或者负数索引来寻找数组中的值,数组中的值是有顺序的。
97 0
ruby数组与散列表
%q中定义的字符串,不加分号  如'hello'与%q(hello)  表示同一字符串 %w表示数组,不对变量进行替换;%W表示数组,对变量进行替换 散列表用=>序列进行分隔 irb(main):001:0> %w(fred wilma barney betty great\ gazoo)=>...
573 0
ruby数组操作
irb(main):005:0> [1,1,3,5] & [1,2,3]=> [1, 3]irb(main):006:0> [1,2,3] * 3=> [1, 2, 3, 1, 2, 3, 1, 2, 3]irb(main):007:0> [1,2,3 ] * "--"=> "1--2--3"irb...
552 0
|
7月前
|
Ruby
|
7月前
|
JSON 数据格式 Ruby