Collections Class in Java - GeeksforGeeks

20 Apr, 2022
Collections class is a member of the Java Collections Framework. The java.util.Collections package is the package that contains the Collections class. Collections class is basically used with the static methods that operate on the collections or return the collection. All the methods of this class throw the NullPointerException if the collection or object passed to the methods is null.  
Syntax: Declaration
public class Collections
extends Object
Remember: Object is the parent class of all the classes.
Collections class fields
The collection class basically contains 3 fields as listed below which can be used to return immutable entities.
EMPTY_LIST to get an immutable empty List
EMPTY_SET to get an immutable empty Set
EMPTY_MAP to get an immutable empty Map
Now let us do discuss methods that are present inside this class so that we can implement these inbuilt functionalities later on in our program. Below are the methods been listed below in a tabular format as shown below as follows:
Methods
Description
Now, we are done with listing all the methods so by ar we have a faint hint with us in perceiving how important are these methods when thinking about a global programming perspective. The important and frequently widely used methods while writing optimized code as you will see these methods somehow in nearly every java optimized code because of havoc usage of Collections class in java. So here more likely in any class we will not just be implementing the method but will also be discussing operations that can be performed so that one can have conceptual clarity and strong command while implementing the same. The operations that we will be discussing are as follows:
Adding elements to the Collections 
Sorting a Collection
Searching in a Collection
Copying Elements
Disjoint Collection
Operation 1: Adding elements to the Collections class object 
The addAll() method of java.util.Collections class is used to add all the specified elements to the specified collection. Elements to be added may be specified individually or as an array.
Example 
Java
// Java Program to Demonstrate Adding Elements// Using addAll() method // Importing required classesimport java.util.ArrayList;import java.util.Collections;import java.util.List; // Main classclass GFG {     // Main driver method    public static void main(String[] args)    {        // Creating a list        // Declaring object of string type        List<String> items = new ArrayList<>();         // Adding elements (items) to the list        items.add("Shoes");        items.add("Toys");         // Add one or more elements        Collections.addAll(items, "Fruits", "Bat", "Ball");         // Printing the list contents        for (int i = 0; i < items.size(); i++) {            System.out.print(items.get(i) + " ");        }    }}
Shoes Toys Fruits Bat Ball 
 Operation 2: Sorting a Collection
java.util.Collections.sort() is used to sort the elements present in the specified list of Collection in ascending order. java.util.Collections.reverseOrder() is used to sort in the descending order. 
Example
Java
// Java program to demonstrate sorting// a Collections using sort() method import java.util.ArrayList;import java.util.Collections;import java.util.List; // Main Class// SortingCollectionExampleclass GFG {     // Main driver method    public static void main(String[] args)    {        // Creating a list        // Declaring object of string type        List<String> items = new ArrayList<>();         // Adding elements to the list        // using add() method        items.add("Shoes");        items.add("Toys");         // Adding one or more elements using addAll()        Collections.addAll(items, "Fruits", "Bat", "Mouse");         // Sorting according to default ordering        // using sort() method        Collections.sort(items);         // Printing the elements        for (int i = 0; i < items.size(); i++) {            System.out.print(items.get(i) + " ");        }         System.out.println();         // Sorting according to reverse ordering        Collections.sort(items, Collections.reverseOrder());         // Printing the reverse order        for (int i = 0; i < items.size(); i++) {            System.out.print(items.get(i) + " ");        }    }}
Bat Fruits Mouse Shoes Toys 
Toys Shoes Mouse Fruits Bat 
Operation 3: Searching in a Collection
java.util.Collections.binarySearch() method returns the position of an object in a sorted list. To use this method, the list should be sorted in ascending order, otherwise, the result returned from the method will be wrong. If the element exists in the list, the method will return the position of the element in the sorted list, otherwise, the result returned by the method would be the – (insertion point where the element should have been present if exist)-1). 
Example
Java
// Java Program to Demonstrate Binary Search// Using Collections.binarySearch() // Importing required classesimport java.util.ArrayList;import java.util.Collections;import java.util.List; // Main class// BinarySearchOnACollectionpublic class GFG {     // Main driver method    public static void main(String[] args)    {        // Creating a List        // Declaring object of string type        List<String> items = new ArrayList<>();         // Adding elements to object        // using add() method        items.add("Shoes");        items.add("Toys");        items.add("Horse");        items.add("Ball");        items.add("Grapes");         // Sort the List        Collections.sort(items);         // BinarySearch on the List        System.out.println(            "The index of Horse is "            + Collections.binarySearch(items, "Horse"));         // BinarySearch on the List        System.out.println(            "The index of Dog is "            + Collections.binarySearch(items, "Dog"));    }}
The index of Horse is 2
The index of Dog is -2
Operation 4: Copying Elements
The copy() method of java.util.Collections class is used to copy all the elements from one list into another. After the operation, the index of each copied element in the destination list will be identical to its index in the source list. The destination list must be at least as long as the source list. If it is longer, the remaining elements in the destination list are unaffected.
Example
Java
// Java Program to Demonstrate Copying Elements// Using copy() method // Importing required classesimport java.util.ArrayList;import java.util.Collections;import java.util.List; // Main class// CopyOneCollectionToAnotherclass GFG {     // Main driver method    public static void main(String[] args)    {        // Create destination list        List<String> destination_List = new ArrayList<>();         // Add elements        destination_List.add("Shoes");        destination_List.add("Toys");        destination_List.add("Horse");        destination_List.add("Tiger");         // Print the elements        System.out.println(            "The Original Destination list is ");         for (int i = 0; i < destination_List.size(); i++) {            System.out.print(destination_List.get(i) + " ");        }        System.out.println();         // Create source list        List<String> source_List = new ArrayList<>();         // Add elements        source_List.add("Bat");        source_List.add("Frog");        source_List.add("Lion");         // Copy the elements from source to destination        Collections.copy(destination_List, source_List);         // Printing the modified list        System.out.println(            "The Destination List After copying is ");         for (int i = 0; i < destination_List.size(); i++) {            System.out.print(destination_List.get(i) + " ");        }    }}
The Original Destination list is 
Shoes Toys Horse Tiger 
The Destination List After copying is 
Bat Frog Lion Tiger 
Operation 5: Disjoint Collection
java.util.Collections.disjoint() is used to check whether two specified collections are disjoint or not. More formally, two collections are disjoint if they have no elements in common. It returns true if the two collections do not have any element in common. 
Example
Java
// Java Program to Illustrate Working of Disjoint Function // Importing required classesimport java.util.ArrayList;import java.util.Collections;import java.util.List; // Main class// DisjointCollectionsExampleclass GFG {     // Main driver method    public static void main(String[] args)    {        // Create list1        List<String> list1 = new ArrayList<>();         // Add elements to list1        list1.add("Shoes");        list1.add("Toys");        list1.add("Horse");        list1.add("Tiger");         // Create list2        List<String> list2 = new ArrayList<>();         // Add elements to list2        list2.add("Bat");        list2.add("Frog");        list2.add("Lion");         // Check if disjoint or not        System.out.println(            Collections.disjoint(list1, list2));    }}
true
ayusmanmishra1999
akshaysingh98088
martialcoder
rushalichaurasiya
Java-Collections
Picked
Java
Java
Java-Collections
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Comments
Old Comments
Split() String method in Java with examples
Arrays.sort() in Java with examples
Reverse a string in Java
Initialize an ArrayList in Java
How to iterate any Map in Java
Singleton Class in Java
Different ways of Reading a text file in Java
Initializing a List in Java
Stream In Java
How to add an element to an Array in Java?