我是靠谱客的博主 悦耳枫叶,这篇文章主要介绍Ruby中的二维数组初始化的一个小问题,现在分享给大家,希望可以做个参考。

我们在Ruby中初始化一个5*5的二维数组,可以写成             data = Array.new(5, Array.new(5, 0)) 也可以写成             data = Array.new(5){ Array.new(5, 0)} 初始化完成后,我可以随便给数组中某个元素赋格值,比如             data[2][2] = 2            我们会发现采用第二种初始化方式,输出是正常的,而采用第一种方式初始化,则每行的第3个数据都被赋值成了2。 这是因为,采用Array.new(size, obj)初始化时,数组中将保存obj的同一引用,所以一个修改了,其他的数组元素也会跟着改变。

最后

以上就是悦耳枫叶最近收集整理的关于Ruby中的二维数组初始化的一个小问题的全部内容,更多相关Ruby中内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(92)

评论列表共有 0 条评论

立即
投稿
返回
顶部