Método Java.util.Collections.rotate() en Java con ejemplos

El método java.util.Collections.rotate() está presente en la clase java.util.Collections. Se utiliza para rotar los elementos presentes en la lista especificada de Colección por una distancia determinada.

Syntax:
public static void rotate(List< type > list, int distance)
Parameters : 
list - the list to be rotated.
distance - the distance to rotate the list. 
type - Type of list to be rotated. Examples of 
       types are Integer, String, etc.
Returns :
NA
Throws:
UnsupportedOperationException - if the specified list or 
its list-iterator does not support the set operation.

No hay restricciones en el valor de la distancia. Puede ser cero, negativo o mayor que list.size(). Después de llamar a este método, el elemento en el índice i será el elemento previamente en el índice (i – distancia) mod list.size(), para todos los valores de i entre 0 y list.size()-1, inclusive.

// Java program to demonstrate working of 
// java.utils.Collections.rotate()
  
import java.util.*;
   
public class RotateDemo
{
    public static void main(String[] args)
    {
        // Let us create a list of strings
        List<String>  mylist = new ArrayList<String>();
        mylist.add("practice");
        mylist.add("code");
        mylist.add("quiz");
        mylist.add("geeksforgeeks");
   
        System.out.println("Original List : " + mylist);
   
        // Here we are using rotate() method
        // to rotate the element by distance 2
        Collections.rotate(mylist, 2);
   
        System.out.println("Rotated List: " + mylist);
    }
}

Producción:

Original List : [practice, code, quiz, geeksforgeeks]
Rotated List: [quiz, geeksforgeeks, practice, code]

¿Cómo rotar rápidamente una array en Java usando rotate()?

La clase de arrays en Java no tiene método de rotación. También podemos usar Collections.rotate() para rotar rápidamente una array.

// Java program to demonstrate rotation of array
// with Collections.rotate()
import java.util.*;
   
public class RotateDemo
{
    public static void main(String[] args)
    {
        // Let us create an array of integers
        Integer arr[] = {10, 20, 30, 40, 50};
   
        System.out.println("Original Array : " +
                                Arrays.toString(arr));
           
        // Please refer below post for details of asList()
        // https://www.geeksforgeeks.org/array-class-in-java/
        // rotating an array by distance 2
        Collections.rotate(Arrays.asList(arr), 2);
           
        System.out.println("Modified Array : " +
                                Arrays.toString(arr));
    }
}

Producción:

Original Array : [10, 20, 30, 40, 50]
Modified Array : [40, 50, 10, 20, 30]

Este artículo es una contribución de Gaurav Miglani . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *