Ruby中带有示例的Array.take()方法

Array.take()方法

在本文中,我们将研究Array.take()方法。你们都必须认为该方法必须在做一些与从Array实例中获取元素或对象有关的事情。它并不像看起来那么简单。好吧,我们将在其余内容中解决这个问题。我们将尝试借助语法并演示程序代码来理解它。

方法说明:

该方法是一个公共实例方法,为Ruby库中的Array类定义。此方法的工作方式是从Array实例中获取n个参数,然后返回一个新的Array实例,其中包含从self Array中获取的对象。如果在调用方法的同时提供负值,则该方法将引发异常。此方法是非破坏性方法的示例之一,该方法不会对self Array中的对象的实际排列带来任何更改。

语法:

    array_instance.take(n) -> new_array or nil

Argument(s) 需要:

此方法仅需要一个参数即可确定要从Array实例获取的对象数。参数必须严格为正整数,否则该方法将引发异常。

范例1:

=begin
  Ruby program to demonstrate take method
=end

# 数组声明
table = [2,4,6,8,10,12,14,16,18,20]

puts "Array take implementation"

puts "Enter the number of objects you want to take from the Array:"
num = gets.chomp.to_i

if(table.take(num))
	puts "The objects taken are: #{table.take(num)}"
else
	puts "Exception occured"
end

puts "Array instance: #{table}"

输出结果

RUN 1:
Array take implementation
Enter the number of objects you want to take from the Array:
 4
The objects taken are: [2, 4, 6, 8]
Array instance: [2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

RUN 2:
Array take implementation
Enter the number of objects you want to take from the Array:
 -5
attempt to take negative size
(repl):13:in `take'
(repl):13:in `<main>'

说明:

在上面的代码中,您可以观察到我们是在Array的帮助下从Array实例中获取元素的。take()方法。对象或元素的获取将从始终为0的Array实例的第一个索引开始。在第二个输出中,您可以观察到,当我们提供负索引时,该方法将引发异常,因为在这种情况下,这个方法没有什么比从Array实例的末尾可以获取对象更重要的了。

范例2:

=begin
  Ruby program to demonstrate take method
=end

# 数组声明
table = ["Subha","Sham","Raat","Vivek","Me"]

puts "Array take implementation"

puts "Enter the number of objects you want to take from the Array:"
num = gets.chomp.to_i

if(table.take(num))
	puts "The objects taken are: #{table.take(num)}"
else
	puts "Exception occured"
end

puts "Array instance: #{table}"

输出结果

RUN 1:
Array take implementation
Enter the number of objects you want to take from the Array:
 3
The objects taken are: ["Subha", "Sham", "Raat"]
Array instance: ["Subha", "Sham", "Raat", "Vivek", "Me"]

RUN 2:
Array take implementation
Enter the number of objects you want to take from the Array:
 -9
attempt to take negative size
(repl):13:in `take'
(repl):13:in `<main>'

说明:

演示该程序只是为了向您展示该方法也适用于String Array。在上面的代码中,您可以观察到我们是在Array的帮助下从Array实例中获取元素的。take()方法。对象或元素的获取将从始终为0的Array实例的第一个索引开始。在第二个输出中,您可以观察到,当我们提供负索引时,该方法将引发异常,因为在这种情况下,这个方法没有什么比从Array实例的末尾可以获取对象更重要的了。