×

Ruby Tutorial

Ruby Basics

Ruby Control Statements

Ruby Methods

Ruby Classes and Methods

Ruby Arrays

Ruby Sets

Ruby Strings

Ruby Classes & Objects

Ruby Hash

Ruby Tools

Ruby Functions

Ruby Built-in Functions

Misc.

Ruby Programs

Ruby Array.rotate! Method

By IncludeHelp Last updated : November 29, 2024

In this article, we will study about Array.rotate! method. You all must be thinking the method must be doing something which is related to rotating certain elements. It is not as simple as it looks. Well, we will figure this out in the rest of our content. We will try to understand it with the help of syntax and demonstrating program codes.

Description and Usage

This method is a public instance method and defined for the Array class in Ruby's library. This method works in such a way that it rotates the content or objects present inside the Array instances. It rotates the Array elements in the way that the second element is considered to be first and the last object is considered to be the first element of the object of Array class. If you pass any negative integer inside the method then the rotation is done in the opposite direction. Array.rotate! is a destructive method where the changes created by this method would create an impact on the actual order of the Self Array instance and these changes are permanent.

Syntax

array_instance.rotate! -> new_array
or
array_instance.rotate!(count) -> new_array

Parameters

This method does take one argument and that argument decides from which index the rotation is going to be held.

Example 1

=begin
  Ruby program to demonstrate rotate! method
=end

# array declaration
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

Output

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

Explanation

In the above code, you can observe that we are rotating the contents of Array class instance with the help of Array.rotate! method. You can observe that after rotating the contents, the first element is "Java" and the last element is "C++". Due to the fact that this method is a destructive method, it is creating an impact on the actual arrangements of elements in the Array instance.

Example 2

=begin
  Ruby program to demonstrate rotate! method
=end

# array declaration
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

Output

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

Explanation

In the above code, you can observe that this method works on Integer Array as well and we are rotating the contents of Array class instance with the help of Array.rotate method. Since we are passing a negative integer inside the method, the rotation is started from the back end side of the Array instance and the 2nd element from the last. You can observe that after rotating the contents, the first element is 18 because this method is destructive and creates changes in the actual arrangements of contents in the Array instance.

Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.