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

 更新时间:2015年05月12日 11:20:41   投稿:goldensun  
这篇文章主要介绍了Ruby中数组的一些相关使用方法,是Ruby学习当中的基础知识,需要的朋友可以参考下

 Ruby数组是有序的,任何对象的??整数索引的集合。每个数组中的元素相关联,并提到的一个索引。

数组下标从0开始,如C或Java。负数索引假设数组末尾---也就是说,-1表示最后一个元素的数组索引,-2是数组中最后一个元素的下一个元素等等。

Ruby的数组可以容纳对象,如字符串,整数,长整数,哈希,符号,甚至其他Array对象。Ruby数组没有在其他语言中数组一样严格。Ruby数组自动增长同时增加元素。
创建数组:

有许多方法来创建或初始化一个数组。一种方式是 new 类方法:

names = Array.new

可以设置一个数组的大小,在数组创建的时候:

names = Array.new(20)

数组 names 现在有20个元素的大小或长度。您可以返回一个数组的大小尺寸或长度的方法:

#!/usr/bin/ruby

names = Array.new(20)
puts names.size # This returns 20
puts names.length # This also returns 20

这将产生以下结果:

20
20

可以指定一个值数组中的每个元素如下:

#!/usr/bin/ruby

names = Array.new(4, "mac")

puts "#{names}"

这将产生以下结果:

macmacmacmac

还可以使用用new块,块会计算填充每个元素:

#!/usr/bin/ruby

nums = Array.new(10) { |e| e = e * 2 }

puts "#{nums}"

这将产生以下结果:

024681012141618

还有另一种方法,数组,[]。它的工作原理是这样的:

nums = Array.[](1, 2, 3, 4,5)

另一种形式的数组创建如下:

nums = Array[1, 2, 3, 4,5]

内核模块Ruby的核心,有一个数组的方法,只接受一个参数。这里的方法范围内创建一个数组的数字作为参数:

#!/usr/bin/ruby

digits = Array(0..9)

puts "#{digits}"

这将产生以下结果:

0123456789

数组内置的方法:

我们需要有Array对象调用数组方法的一个实例。正如我们所看到的,下面是Array对象的方式来创建一个实例:

Array.[](...) [or] Array[...] [or] [...]

这将返回一个新数组填充给定的对象。现在使用创建的对象,我们可以调用任何可用实例方法。例如:

#!/usr/bin/ruby

digits = Array(0..9)

num = digits.at(6)

puts "#{num}"

这将产生以下结果:

6

例如:

试试下面的例子来收集各种数据。

a = [ "a", "b", "c" ]
n = [ 65, 66, 67 ]
puts a.pack("A3A3A3")  #=> "a b c "
puts a.pack("a3a3a3")  #=> "a\000\000b\000\000c\000\000"
puts n.pack("ccc")   #=> "ABC"

这将产生以下结果:

a b c
abc
ABC

相关文章

  • Ruby 取得指定月日期数的方法

    Ruby 取得指定月日期数的方法

    取得指定月日期数的Ruby代码
    2009-05-05
  • ruby执行周期性任务的三种gem介绍

    ruby执行周期性任务的三种gem介绍

    无论是用ruby做系统管理,还是用rails做web开发,都可能遇到周期性任务,它们按照一定时间周期(1小时,2天......)持续地触发。在ruby中,我认为一次性任务使用 sidekiq 来完成是非常方便的,而周期性的任务就需要用到 whenever , sidetiq , clockwork 等等gem了。
    2014-07-07
  • ruby will_paginate的用法

    ruby will_paginate的用法

    老版本的will_paginate是基于plugin方式的,其安装方式如下:ruby script/plugin install svn://errtheblog.com/svn/plugins/will_paginate
    2008-08-08
  • RUBY 新手教程 跟我一起学ruby

    RUBY 新手教程 跟我一起学ruby

    从今天起我就要开始学Ruby了。怎么样,没见吧?一个新人写教程。就凭我坚强的毅力,科学的自学方法,以及我的钻研精神,我有信心学通Ruby,而同样是新手的你也可以!
    2011-01-01
  • Ruby简洁学习笔记(二):类继承、属性、类变量

    Ruby简洁学习笔记(二):类继承、属性、类变量

    这篇文章主要介绍了Ruby简洁学习笔记(二):类继承、属性、类变量,本文是个人学习总结第二篇,需要的朋友可以参考下
    2015-01-01
  • Ruby中百分号和字面值的使用示例

    Ruby中百分号和字面值的使用示例

    这篇文章主要介绍了Ruby中百分号和字面值的使用示例,作者给出了相关编程风格上的一些建议,需要的朋友可以参考下
    2015-08-08
  • Ruby中常用的字符串处理函数使用实例

    Ruby中常用的字符串处理函数使用实例

    这篇文章主要介绍了Ruby中常用的字符串处理函数使用实例,本文总结了Ruby中最常用的字符串处理函数,如返回字符串的长度、判断字符串中是否包含另一个串、字符串插入、字符串分隔、默认分隔符为空格等内容,需要的朋友可以参考下
    2015-01-01
  • Ruby的基本语法学习总结

    Ruby的基本语法学习总结

    这篇文章主要介绍了Ruby的基本语法学习总结,本文讲解了Ruby中的关键字、注释、数据类型、赋值和条件运算、输出和输入、条件判断语句、循环语句等内容,需要的朋友可以参考下
    2014-11-11
  • ruby 局部变量

    ruby 局部变量

    ruby 局部变量...
    2007-11-11
  • 最新的CocoaPods安装教程

    最新的CocoaPods安装教程

    写一篇文章完整地记录一下自己的CocoaPods安装过程,并收集了一些安装过程常见的错误供大家参考。
    2017-12-12

最新评论