`
caick
  • 浏览: 813 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

ruby的基本类之array

阅读更多
这一篇主要记录一下array的用法。
array在ruby中是一个非常非常常用的类。
首先定义一个array的方法有很多种,
arr = Array.new
定义的是一个一位数组。
arr = Array.new([1,2,3]),定义的同时赋值。
arr = Array.new(3),定义的时候设定数组的长度。
arr可以通过 push操作动态增加长度和内容。
arr = []
arr = Array.new(3,"a"),定义一个数组,共三个元素,并且都是字符串"a"
Array.new(4) { Hash.new } #=> [{}, {}, {}, {}]

二维数组的话
arr = [[1,2],[3,4]]
上面是数组的定义
*************************************
下面总结一下数组的操作
首先是数组的取值操作。
a = [1,2,3,4,5,6]
a[index]获得指定位置的值。数组的index 从0开始记
a[index,length] index,就是一个起始值,length,是从起始的索引值开始计数,取几个元素。
a[-index] index是从1,开始,a[-1]取的是数组的最后一个元素,依次类推
a[1..4]取的是从a[1]到a[4]的数组的值。
a.at(index)同a[index]是一样效果
a.fetch(index)同上

a.frist  #=>1
a.last  #=>6
a.first(2) #=>[1,2]
a.last(2) #=>[5,6]
a.drop(1) #=>[1]
a.drop(2) #=>[1,2] (数组本身不变)
a.length #=>6
a.size  #=>6
a.push(7) #=>[1,2,3,4,5,6,7]
a << 7 #=>[1,2,3,4,5,6,7]
a.empty? #=>false
a.include?("1")  #=> true

arr =  [1, 2, 3, 4, 5, 6]
arr.pop #=> 6
arr #=> [1, 2, 3, 4, 5]
arr.delete_at(0) #=>[2,3,4,5]
arr.delete(3) #=>[2,4,5]

arr =[1,2,3,4,nil]
arr.compact #=>[1,2,3,4]
arr.compact! #=>[1,2,3,4]

arr =[1,2,3,4,3,1,5,6]
arr.uniq

arr.each do |each_a| p each_a end
arr.map{|a|a+1}
arr.collect{|a|a+1}

分享到:
评论

相关推荐

    Ruby 基本语言介绍

    ##### 3.4 Array 类 - **push**、**pop**:添加和移除数组末尾的元素。 - **shift**、**unshift**:添加和移除数组开头的元素。 - **sort**:排序数组。 - **reverse**:反转数组顺序。 - **map**:对数组中的每个...

    Ruby编程Ruby Programming

    - **动态性**:Ruby支持运行时修改代码结构,允许开发者在程序运行过程中改变类和方法的行为。 - **元编程能力**:Ruby提供了一种称为元编程的技术,使得程序可以自我修改和自我扩展。 ### 二、Ruby编程基础 #### ...

    ruby官方chm文档

    例如,它会详细介绍如何创建和使用类、继承机制、模块混入、块和 Proc 对象,以及符号(Symbol)、字符串(String)、数组(Array)、哈希(Hash)等基本数据类型的使用。核心库的理解对于掌握Ruby语言至关重要。 ...

    ruby中文手册 chm

    这部分通常是对Ruby内置类库、方法、语法的详细参考,涵盖了标准库的所有模块和类,比如Array、Hash、String等。它提供了每个方法的用法、参数和返回值,是开发者在编写代码时查找特定功能或方法的重要资源。 3. *...

    ruby-使用ruby实现的算法之冒泡排序.zip

    本资料包“ruby-使用ruby实现的算法之冒泡排序.zip”专注于讲解如何使用Ruby来实现经典的冒泡排序算法,这对于理解排序算法以及提升Ruby编程技能非常有帮助。 冒泡排序是一种基础且直观的排序算法,它通过重复遍历...

    Ruby语言教程对Ruby语法的总结展示Ruby语法的基本概念和用法.docx

    通过这些知识点的学习,你可以构建出基本的 Ruby 程序。为了更深入地掌握 Ruby,推荐进一步阅读官方文档、教程和参考书籍,并多实践编写代码。Ruby 是一种非常灵活且功能强大的编程语言,适合多种应用场景,从Web...

    Ruby不完全读书指南.rar

    另外,Ruby的块(Block)和块语法是其独特之处,可以用于迭代、回调和延迟执行等功能。 Ruby的控制结构包括条件语句(如if/else、case)、循环(如while、for、until)以及异常处理(如begin/rescue/ensure)。Ruby...

    Ruby的迭代之道:each与map的较量

    ### Ruby 的迭代之道:`each`与`map`的较量 #### Ruby 语言简介 Ruby 是一种高级的、面向对象的编程语言,由日本开发者松本行弘(Yukihiro "Matz" Matsumoto)于 1995 年创建。其设计目标旨在实现简单、自然且强大...

    ruby入门练习题.zip

    9. **集合数据结构**:Ruby提供了多种内置的集合数据结构,如数组(Array)、哈希(Hash)、范围(Range)、集合(Set)等,每种都有其特定的用途和操作方式。 10. **错误处理**:Ruby使用`begin..rescue..end`来...

    Ruby - Ruby for Rails

    - **核心类库**:探讨 Ruby 的核心类库,包括 Array、Hash、String 等类的功能及用法。 - **常用方法**:总结常用的核心类方法,如 map、select、each 等。 #### 3.2 标量对象 - **数值类型**:讲解数值类型(如 ...

    ruby开发文档

    Ruby中的所有事物都是对象,包括基本类型如整数、字符串和布尔值。Ruby支持单一继承,但通过模块混合实现了多面性。 2. **语法特性**:Ruby的语法简洁,易于学习。它支持块(block)、闭包(closure)和 Proc 对象...

    ruby 资源(代码范例)

    1. **变量**:Ruby有四种基本类型的变量,分别是局部变量(以小写字母或下划线开头)、实例变量(以`@`开头)、类变量(以`@@`开头)和全局变量(以`$`开头)。 2. **数据类型**:Ruby是动态类型语言,主要的数据...

    ruby初学者教程(对初学者很有帮助)

    元类是类的类,即用来创建类的类,主要涉及到了Ruby的元编程特性。 **3.7 Ruby的动态性** Ruby的动态特性体现在其可以动态地创建类和方法,甚至可以在运行时修改现有的类和方法。 **3.8 变量** - **局部变量**:...

    ruby的API文档,有需要同事请下载

    Ruby的API(应用程序接口)文档是开发者理解和使用Ruby语言的重要资源,它详细介绍了Ruby的标准库、类、模块、方法等核心组件。Ruby 1.9.3是其历史上的一个重要版本,此版本引入了许多改进和新特性。 1. **Ruby的...

    ruby语法

    2. **数据类型**: Ruby支持多种数据类型,包括字符串(`String`)、整数(`Integer`)、浮点数(`Float`)、布尔值(`TrueClass`和`FalseClass`)、数组(`Array`)、哈希(`Hash`)以及nil(表示无值,`NilClass`)...

    ruby中文教程(源代码)

    通过深入学习这个Ruby中文教程,你将能够掌握这门语言的基本概念和核心机制,为进一步学习Ruby on Rails或其他Ruby相关的技术打下坚实的基础。同时,实践源代码将使理论知识更加生动和实用,助你在编程世界中...

Global site tag (gtag.js) - Google Analytics