Collections

Shuffle List elements example

In this example we shall show you how to shuffle a List’s elements. This is provided by the shuffle(List list) API method of the Collections class. The Collections class provides static methods that operate on or return collections. The ArrayList is used as a List implementation, but the same API applies to any type of List implementation classes e.g. Vector etc. To shuffle the elements of a List one should perform the following steps:

  • Create a new ArrayList.
  • Populate the list with elements, with the add(E e) API method of the ArrayList.
  • Shuffle the elements of the list, invoking the shuffle(List list) API
    method of the Collections. It will randomly permute the specified list using a default source of randomnes,

as described in the code snippet below.

package com.javacodegeeks.snippets.core;
 
import java.util.ArrayList;
import java.util.Collections;
 
public class ShuffleList {
 
  public static void main(String[] args) {

    /*

Please note that the same API applies to any type of 

List implementation classes e.g. Vector etc

*/

    // Create an ArrayList and populate it with elements
    ArrayList arrayList = new ArrayList();
    arrayList.add("element_1");
    arrayList.add("element_2");
    arrayList.add("element_3"); 
    arrayList.add("element_4"); 
    arrayList.add("element_5"); 

    System.out.println("ArrayList elements : " + arrayList);

    // static void shuffle(List list) method shuffles elements of the provided LIst
    Collections.shuffle(arrayList);
 
    System.out.println("ArrayList elements after shuffling : " + arrayList);
 
  }
}

Output:

ArrayList elements : [element_1, element_2, element_3, element_4, element_5]
ArrayList elements after shuffling : [element_5, element_3, element_4, element_1, element_2]

 
This was an example of how to shuffle a List’s elements in Java.

Byron Kiourtzoglou

Byron is a master software engineer working in the IT and Telecom domains. He is an applications developer in a wide variety of applications/services. He is currently acting as the team leader and technical architect for a proprietary service creation and integration platform for both the IT and Telecom industries in addition to a in-house big data real-time analytics solution. He is always fascinated by SOA, middleware services and mobile development. Byron is co-founder and Executive Editor at Java Code Geeks.
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Inline Feedbacks
View all comments
Back to top button