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

Ruby Array.rotate()方法

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

方法说明:

该方法是一个公共实例方法,为Ruby库中的Array类定义。该方法的工作方式是旋转Array实例中存在的内容或对象。它以以下方式旋转Array元素:将第二个元素视为第一个元素,将最后一个对象视为Array类的对象的第一个元素。如果在方法内部传递任何负整数,则旋转方向相反。数组。rotate()是一种非破坏性方法,其中此方法创建的更改不会影响Self Array实例的实际顺序,并且这些更改不是永久的。

语法:

    Array_instance.rotate -> new_array
    or
    Array_instance.rotate(count) -> new_array

Argument(s) 需要:

此方法确实接受一个参数,并且该参数决定将从哪个索引中保留旋转。

范例1:

=begin
  Ruby program to demonstrate rotate method
=end

# 数组声明
Lang = ["C++","Java","Python","Html","Javascript","php","Ruby","Kotlin"]

puts "Array rotate implementation."
print Lang.rotate
puts ""

puts "The first element of the Array is: #{Lang[0]}"
puts "Array elements are:"
print Lang

输出结果

Array rotate implementation.
["Java", "Python", "Html", "Javascript", "php", "Ruby", "Kotlin", "C++"]
The first element of the Array is: C++
Array elements are:
["C++", "Java", "Python", "Html", "Javascript", "php", "Ruby", "Kotlin"]

说明:

在上面的代码中,您可以观察到我们正在借助Arrayrotate()旋转Array类实例的内容方法。您可以观察到旋转内容之后,第一个元素是“ Java”,最后一个元素是“ C ++”。由于此方法是一种非破坏性方法,因此不会对Array实例中元素的实际排列产生任何影响。

范例2:

=begin
  Ruby program to demonstrate rotate method
=end

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

puts "Array rotate implementation"
print Table.rotate(-2)
puts ""

puts "The first element of the Array is: #{Table.first}"
puts "Array elements are:"
print Table

输出结果

Array rotate implementation
[18, 20, 2, 4, 6, 8, 10, 12, 14, 16]
The first element of the Array is: 2
Array elements are:
[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

说明:

在上面的代码中,您可以看到这个方法也适用于 Integer Array,我们正在使用 Array.rotate ()方法旋转 Array 类实例的内容。因为我们在方法中传递了一个负整数,所以旋转从 Array 实例的后端开始,第二个元素从最后一个元素开始。您可以观察到,在旋转内容之后,第一个元素仍然是2,因为这个方法是非破坏性的,并且不会在 Array 实例中的内容的实际安排中创建任何更改。