数组及
hash
相关用法
数字和字符串都可以作为
hash
的键
将数组转化为
hash
:(
a
为对象数组)
首先定义一个
hash
h={}
,
a.each
{|e|h[e.code]=e}
.compact
移出数组内所有
nil
的元素。形成不含
nil
的数组
.join(
“”
)
将数组以(“”)内的格式输出
.map{|u|
[u.name,u.id]}
将数组中的元素再以数组形式输出
.group_by(|a|
a.rxsj.year).keys
按照数组中的某些内容进行分组形成
hash
集合
Params[:student]
取到的是一个
hash
,
params[:student][:rxsj]
取到的是里面的项
Select_tag(:xiao,options_for_select(
放入
hass))
与
form.select()
的用法相同
Redirect_to :action=>xxx
:student=>xxx
:student
传入的
hash
可以被
action
中的
params[:student]
接收到
数组
<<
对象
往数组内增加一个元素
Hash.each
的迭代为
hash.each{|k,v|
….}k
代表键,
v
代表值
Ruby
中函数的默认的返回值为
true
,结束函数时应以
return
来结束
对于不是一行的语句块要用
do end
例
xxxx.each do |aaa|
…………
End
数组
.include?(
一个元素
)
返回
true
或
false
判断是否包换该元素
注:数组的迭代有顺序,而
hash
的迭代没有顺序
数组操作
1
、数组定义
arr1=[]
arr2=Array.new
arr3=[
'1'
,
'2'
,
'3'
]
2
、输出
print
arr3,
"\n"
#123
putsarr3[0]
#1
print
arr3.join(
","
)
#1,2,3
3
、访问数组元素
arr1[0]
arr1[-1]
#
这个比较有意思,意思是最后一个的数据
arr1.first
arr1.last
arr1.max
arr1.min
arr1.length
arr1.size
4
、数组操作
arr3[4]=
'5'
#
此时
arr3[3]
默认尾
nil
arr3.delete_at(3)
#
删除指定下标的元素
arr3[2]=[
"3a"
,
"3b"
,
"3c"
]
#
可以这样来做
arr3.delete([
"3a"
,
"3b"
,
"3c"
])
#
可以删除上面添加的
arr3.push(
'6'
)
#
插入元素
arr3.insert(3,
"b"
)
#
在指定位置插入新元素
arr3<<
"f"
<<2
#
从左至右一次加入元素
arr3.pop
#
删除尾元素
arr3.shift
#
删除首元素
arr3.clear
#
清空数组
5
、数组运算
aaa=[
"aa"
,4,5,
"bb"
]
bbb=[4,1,3,2,5]
print
aaa+bbb,
"\n"
#aa45bb41325
print
aaa*2,
"\n"
#aa4566aa4566
print
bbb-aaa
#132
print
aaa|bbb,
"\n"
#aa45bb132
print
aaa&bbb,
"\n"
#45
print
bbb.sort,
"\n"
#12345
排序
print
aaa.reverse,
"\n"
#bb54aa
倒置
print
bbb.sort.reverse,
"\n"
#54321
降序
分享到:
相关推荐
今天学习的是数组和Hash,数组在很多编程语言中都能常常用到。 数组: 数组是存储数据的一种容器,在Ruby中,数组中存储的数据可以是任何类型的数据;这和JAVA不同,在JAVA中,数组是存储同一类型数据的结构。 1. 在...
这些对象可以是任何类型的 Ruby 对象,包括但不限于字符串(String)、整数(Integer)、哈希(Hash)甚至是其他数组(Array)等。数组中的每个元素都有一个与之关联的索引,索引从 0 开始。此外,Ruby 支持负数索引,即索引...
下面我们将深入探讨Ruby数组的各种操作。 1. **创建数组**:Ruby数组的创建非常直观,只需在方括号`[]`内列出元素,并用逗号隔开即可。例如,`ary = [1, 2, "3"]` 创建了一个包含整数和字符串的数组。 2. **数组...
在Ruby编程语言中,数组(Arrays)和散列表(Hashes)是两种非常重要的数据结构,它们用于存储和管理对象的集合。数组以整数为索引,而散列表则使用任意对象作为键。这两者都是动态调整大小的,允许在需要时添加新的...
### Ruby中关于Hash的基本使用方法 #### 一、哈希的概念 哈希(Hash)是一种存储键值对的数据结构,在Ruby中,哈希允许我们通过键(Key)来访问值(Value)。与数组不同,数组的索引是整数型的,而哈希的键可以是...
以上是Ruby自学笔记中提及的关键知识点的详细解读,如果要学好Ruby语言,深入理解这些基础知识是非常必要的。Ruby语言的这些特性与规则构成了其独特的编程范式,使得它在动态语言领域中占有一席之地。
此外,Ruby还有数组(Array)和哈希(Hash)等复合数据类型。 2. **控制结构**:Ruby中的控制结构包括条件语句(如if/else,case/when)、循环(如for,while,until,each)以及流程控制语句(如break, next, ...
6. **哈希(Hash)**:Ruby的哈希是一种关联数组,键值对的存储方式,文档会介绍如何创建和操作哈希。 7. **正则表达式(Regexp)**:Ruby内置了强大的正则表达式支持,用于文本匹配和处理。 8. **文件和I/O操作**...
- 数据类型:Ruby是动态类型语言,主要数据类型包括字符串(`String`)、整数(`Integer`)、浮点数(`Float`)、布尔值(`TrueClass`和`FalseClass`)、数组(`Array`)、哈希(`Hash`)、符号(`Symbol`)等。...
Ruby中的数组(Array)用于存储有序的元素集合,可以使用索引访问。哈希(Hash)则是一种键值对的集合,通过键来访问对应的值。Ruby的数组和哈希都支持丰富的操作,如合并、迭代、过滤等。 五、模块和类 Ruby的...
通过本文的学习,我们可以了解到Ruby on Rails的一些基础知识点,包括各种字符串处理方法、正则表达式方法、时间处理方法、数组处理方法、验证方法以及枚举混合方法,同时也了解了Rails项目的默认目录结构。这些基础...
在Ruby编程语言中,哈希(Hash)是一种特殊的数据结构,用于存储键值对(key-value pairs)。在本教程中,我们将详细介绍如何在Ruby中创建和使用哈希,罗列各种方法和技巧,并解释哈希的特性。 ### 理解哈希的基本...
Ruby中的数组(Array)和哈希(Hash)有什么区别?请说明在Ruby中数组和哈希的不同特点。 **数组**是有序的元素集合,可以通过索引访问;**哈希**是键值对的无序集合,通过键来访问对应的值。 **示例**: ```ruby...
1.创建哈希:就像创建数组一样,我们可以通过Hash类来创建一个Hash实例: h1 = Hash.new #默认值为nil h2 = Hash.new(“This is my first hash instance”) #默认值为” This is my first hash instance”: 上面两...
这本面向初学者和高级读者的指南旨在全面介绍Ruby编程语言的基础及其高级特性,因此我们将从多个角度来解析这些内容。 ### 一、Ruby编程语言简介 #### 1.1 Ruby语言的历史与发展 Ruby是一种动态、面向对象的脚本...