ruby怎么实现数组减法

Python012

ruby怎么实现数组减法,第1张

数组的创建和初始化

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

b = Array[1,2,3,4]

c = [1,2,3,4]

d = Array.new #创建一个空数组

e = Array.new(3) #[nil,nil,nil] 初始大小3

f = Array.new(3,"xx") #["xx","xx","xx"] 初始大小3 初始值"xx"

f[0].capitalize! #=>["Xx","Xx","Xx"]

g = Array.new(3){"yy"} #=>["yy","yy","yy"]

g[0].capitalize! #=>["Yy","yy","yy"]

.all?这是一个ruby方法,他的返回结果只有两个,true或者false,判断的是数组中每一个元素都是true的就返回true,只要有一个不是true就返回false,如[nil,22].all?返回的就是false。还有就是判断数组遍历运算过程中,每一个结果是不是true,如[1,2,3].all?{|w| w >1}这个的结果就是false。

你的例子中,作为判断对象的是一个空数组,不执行后面的代码,也没有一个元素是false的,所以返回的是true,这是我的见解

这个是将一串字符串转化成数组的方法

(1) 在默认无参传入的时候 ,是以空格为间隔 ,获得数组

 pry(main)> " now's the time".split

 => ["now's", "the", "time"]

(2) 如果接受一个字符参数 ,那么会按照这个字符参数进行分割变成数组

pry(main)> "mellow yellow".split("ello")

 => ["m", "w y", "w"]

(3)如果接受的是两个参数 ,后面的参数是用来确定分割数组里面元素的个数,如果在按规则分割的时候 剩下多余的就变成一个元素

pry(main)> "mellow,yellow".split(//,4)

 => ["m", "e", "l", "low,yellow"]

(4)当然split 参数 也接受正则表达式,如下

pry(main)> "hi mom".split(%r{\s*})

 => ["h", "i", "m", "o", "m"]