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方法来处理连接字符串

 

 

 

 

      

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值