Ruby数组
Ruby数组是有序的,任何对象的整数索引的集合。每个数组中的元素相关联,并提取到的一个索引。下标与C或Java相似,从0开始。负数索引假设数组末尾,也就是说-1表示最后一个元素的数组索引,-2是数组中最后一个元素的下一个元素等等。
Ruby的数组可以容纳对象,如字符串,整数,长整数,哈希,符号,甚至其他Array对象。Ruby数组没有像在其他语言数组一样严格。Ruby数组自动增长,同时增加元素。
创建数组
有许多方法来创建或初始化一个数组,一种是new方法:
names = Array.new
早创建时可以设置一个数组的大小
names = Array.new(20)
数组names现在有20个元素的大小/长度。您可以返回用数组属性size或length来获取数组长度
可以指定一个数组汇总的每个元素值
names = Array.new(4,"mac")
这样创建的数组中每个元素都是mac字符串
还可以使用new块,块会计算并填充每个元素:
nums = Array.new(10){ |e| e = e*2 }
这样创建的数组元素为:0,2,4,6,8,10,12,14,16,18
还有另一种方法,语法如下
nums = Array.[]{1,2,3,4}
或:
nums = Array[1,2,3,4]
内核模块Ruby的核心,有一个数组的方法,只接受一个参数,这里的方法范围内创建一个数组的数组作为参数
digits = Array(0..9)
这样创建的结果为:0,1,2,3,4,5,6,7,8,9
数组内置的方法
以上面创建的数组对象为例:
取某个索引的元素:
num = digits.at(3)
#num = 3
Ruby数组的更多相关文章
- 雷林鹏分享:Ruby 数组(Array)
Ruby 数组(Array) Ruby 数组是任何对象的有序的.整数索引的集合.数组中的每个元素都与一个索引相关,并可通过索引进行获取. 数组的索引从 0 开始,这与 C 或 Java 中一样.一个负 ...
- Ruby数组(1):基本用法
数组 Ruby中的数组是一个容器,数组中的每个元素都是一个对象的引用. 注意,Array类中包含了Enumerable模块,所以Enumerable中的方法也都能使用,例如Enumerable中的re ...
- Ruby数组方法整理
数组方法整理 方法列表: all().any().none()和one():测试数组中的所有或部分元素是否满足给定条件.条件可以是语句块中决定,也可以是参数决定 append():等价于push() ...
- ruby数组操作方法汇总
1.数组定义 arr1 = [] arr2 = Array.new arr3 = ['1','2','3'] 2.输出 print arr3,"\n" #123 puts arr3 ...
- ruby 数组array 排序sort 和sort!
1. sort → new_ary click to toggle source sort { |a, b| block } → new_ary Returns a new array created ...
- Ruby数组的操作
数组的创建arr = Array.new num #创建num个元素的数组,所有数组元素为nilarr = Array.new num, elem #创建num个元素的数组,所有数组元素为elemar ...
- ruby 数组操作
数组的创建 arr = Array.new num #创建num个元素的数组,所有数组元素为nil arr = Array.new num, elem #创建num个元素的数组,所有数组元素为elem ...
- ruby 数组 Hash相互转换
由[索引, 值, ...] 型的数组变为哈希表 ary = [1,"a", 2,"b", 3,"c"] p Hash[*ary] # =&g ...
- ruby 数组与散列
def say_goodnight(name) result ="Good night ." +name return result end def say_goodmorning ...
随机推荐
- java利用JDK调用并执行js源码
前言: 不同开发语言之间具有通用性,更具有协作调用的可能.有时候对于一些场景会有调用js的需求,因此下面展示了一个java利用自身JDK调用js函数的demo,供感兴趣的朋友参考. js函数文件 ex ...
- bzoj2702[SDOI2012]走迷宫
题意:给你一个有向图,点数10000,边数1000000,SCC大小不超过100(按数据范围的写法只有第三部分数据满足这个条件,不过第二部分数据并没有出现大小大于100个点的SCC,我是用数组大小为1 ...
- iOS XCode7制作.Framework动态库和.a静态库的总结
一.开发SDK时的支持情况: OC语言制作动态库时,支持iOS8+:OC语言制作静态库,支持iOS7+. Swift语言制作动态库时,支持iOS8+;Swift不支持静态库. 对于SDK来说,支持情况 ...
- javascript基本对象
1 String对象 创建对象 var string1 = new String("Hello"); var string2 = "Hello" //也可以创建 ...
- mybits批量插入
<!--批量插入--> <insert id="batchSave" parameterType="java.util.List"> i ...
- C++构造函数
一. 构造函数是干什么的class Counter{public: // 类Counter的构造函数 // 特点:以类名作为函数名,无返回类型 Coun ...
- thinkphp疑难解决4
关于文件上传所涉及到的php.ini 中的一些配置: (以当前要设置的关键字开头...) 是每个上传文件所允许的大小, 默认的 upload_max_filesize = 2M, 如果超过了2M,_P ...
- java中数组的基本知识
数组{ 物以类聚 人以群分 avg sum 数组 数组的概念[ 数组:一组具有相同数据类型的集合 ] 数组的语法[ 先声明 后使用 声明数组: 数据类型+[]+ 变量名 ;/ 数据类型+变量名 +[] ...
- SQL Server群集知识介绍
集群CLUSTER种类介绍 基于iSCSI的SQL Server 2012群集测试(一)--SQL群集安装 SQL Server群集如何在线检测 群集中的MS DTC分布式事务协调器 一.SQL Se ...
- mysql 中基础英语单词 (一)关于数据库创建与查找 (包括简写单词)
create 创建 limit 限制 count 计算 rollup 几上归纳 drop 降下,撤销 ...