ruby小记录_Ruby_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > Ruby > ruby小记录

ruby小记录

 2012/10/15 10:38:43  villins  程序员俱乐部  我要评论(0)
  • 摘要:1.a=Array.new(3,[0,0,0])=>[[0,0,0],[0,0,0],[0,0,0]]实例化出来的数组其实只是只有三个数组元素的一维数组而不是所期望的二维数组,虽然它可以a[i][j]取出元素,但是不要被其所迷惑测试下a[0][1]=1=>[[0,1,0],[0,1,0],[0,1,0]]这可得知了,上面实例话的数组是三个数组对象元素的一维数组。可以这样新建二维的,如下:irb(main):056:0>a=Array.new(3){[0,0,0]}=>
  • 标签:Ruby

1.a = Array.new(3,[0,0,0])

?

? ?=>?[[0, 0, 0], [0, 0, 0], [0, 0, 0]]

?

? ?实例化出来的数组其实只是只有三个数组元素的一维数组而不是所期望的二维数组,虽然它可以a[i][j]取出元素,但是不要被其所迷惑

?

? ?测试下

?

? ?a[0][1] = 1

?

? ?=> [[0, 1, 0], [0, 1, 0], [0, 1, 0]]

?

? ?这可得知了,上面实例话的数组是三个数组对象元素的一维数组。

?

? ?可以这样新建二维的,如下:

?

? ?irb(main):056:0> a = Array.new(3){[0,0,0]}

? ?=> [[0, 0, 0], [0, 0, 0], [0, 0, 0]]

? ?irb(main):057:0> a[1][1] = 1

? ?=> 1

? ?irb(main):058:0> a

? ?=> [[0, 0, 0], [0, 1, 0], [0, 0, 0]]

?

?

?

2.连接字符串之实例多少个对象

?

? ?连接符 —— “+

?

? ?eg:

? ?irb(main):037:0> a = "ti"

? ?=> "ti"

? ?irb(main):038:0> a.object_id

? ?=> 17762940

? ?irb(main):039:0> a = a + "is"

? ?=> "tiis"

? ?irb(main):040:0> a.object_id

? ?=> 18255588

?

? ?从上面可以看出,用连接符“+”连接字符串是要创建新的字符串对象的

?

? ?再来看连接符“<<”和concat方法

?

? ?eg:

?

? ?irb(main):050:0> a = "this"

? ?=> "this"

? ?irb(main):051:0> a.object_id

? ?=> 11012820

? ?irb(main):052:0> a << " is"

? ?=> "this is"

? ?irb(main):053:0> a.object_id

? ?=> 11012820

? ?irb(main):054:0> a.concat(" string")

? ?=> "this is string"

? ?irb(main):055:0> a.object_id

? ?=> 11012820

?

? ?到这里,可以发现连接符“<<”和concat方法都是在原来的字符串对象连接上其他字符串,而不用新建对象引用

?

? ?所以建议使用连接符“<<”和concat方法来处理连接字符串

?

?

?

?

? ? ??

?

发表评论
用户名: 匿名