在Ruby中使用Array.new(size){| index |}创建数组
在上一篇文章中,我们了解了如何在方法的帮助下声明Array类实例?您还可以注意到,在编写用于演示所有这些方法的程序代码中,它们均使用常规方法声明了Array实例,例如,Array.new(Array)
array_name = ['ele1', 'ele2', 'ele3', ..., 'eleN']
现在,在阅读了之前的文章之后,我们还学习了通过以下方式声明Array类对象:
array_name = Array.[](*args) array_name = Array.new(size = 0, obj = nil) array_name = Array.new(size){|index| block}
以上是我们在上一篇文章中使用它的方式。我们已经学习了三种方法,通过这三种方法我们可以在Ruby中声明一个Array。在本文中,我们将看到如何使用Array.new(size){|index|block}方法声明Array对象。
方法说明:
此方法是公共类方法。较早的数组是通过将索引传递给它们来创建的。在这种方法的情况下,通过将元素的索引传递给提供的块来生成每个元素的值,并存储返回的值。
语法:
array_name = Array.new(size){|index| index#operation}
Parameter(s):
在这种方法中,参数起着非常重要的作用。此方法将大小作为参数。整个处理将在提供的块的帮助下完成。
范例1:
=begin Ruby program to demonstrate the Array.new(size){} method =end # 数组声明 arr = Array.new(5){|index| index*2} # 打印数组元素 puts "Array elements are..." puts arr
输出结果
Array elements are... 0 2 4 6 8
说明:
借助以上代码,您可以轻松了解该方法的实现。借助此方法,我们正在创建一个名为“arr”的Array实例。我们希望Array对象的大小为5,元素应为2的索引倍数。在输出中,您可以观察到Array元素为0、2、4、6和8。第一个元素为0,因为我们知道Array实例的索引始终从0开始。您也可以从用户那里输入尺寸。Array.new(size)
范例2:
=begin Ruby program to demonstrate the Array.new(size){} method =end # 数组声明 arr = Array.new(5){|index|} # 打印数组元素 puts "Array elements are..." puts arr
输出结果
Array elements are...
说明:
您可以在上面的代码中观察到,当您指定要通过其传播数组的条件时,将为大小时间分配nil值。在此,向数组提供了五个nil值。