Collections.max() method in Java

The Collections.max method is part of the Java Collections Framework and is used to find the maximum element in a given collection. It can determine the maximum element using either the natural ordering of the elements or a specified Comparator.

D…


This content originally appeared on DEV Community and was authored by realNameHidden

The Collections.max method is part of the Java Collections Framework and is used to find the maximum element in a given collection. It can determine the maximum element using either the natural ordering of the elements or a specified Comparator.

Description of Collections.max

Method Signatures

Natural Ordering

public static <T extends Object & Comparable<? super T>> T max(Collection<? extends T> coll)

Parameters:

coll: The collection from which the maximum element is to be determined. All elements in the collection must implement the Comparable interface.

Returns: The maximum element according to the natural ordering.

Throws:
ClassCastException if the elements are not mutually comparable.
NoSuchElementException if the collection is empty.

Custom Comparator

public static <T> T max(Collection<? extends T> coll, Comparator<? super T> comp)

Parameters:
coll: The collection from which the maximum element is to be determined.

comp: The comparator to determine the order of the collection. A null comparator indicates that natural ordering should be used.

Returns: The maximum element according to the specified comparator.

Throws:
NoSuchElementException if the collection is empty.

Example of Collections.max

Below are examples demonstrating how to use the Collections.max method with both natural ordering and a custom comparator.

Example 1: Using Natural Ordering
In this example, we find the maximum element from a list of integers using their natural ordering.

import java.util.*;

public class MaxExampleNaturalOrdering {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(3, 9, 1, 5, 8);

        // Find the maximum element using natural ordering
        int maxNumber = Collections.max(numbers);

        System.out.println("Maximum number: " + maxNumber); // Output: 9
    }
}

Example 2: Using Custom Comparator
In this example, we find the maximum element from a list of strings based on their lengths using a custom comparator.

import java.util.*;

public class MaxExampleCustomComparator {
    public static void main(String[] args) {
        List<String> fruits = Arrays.asList("Banana", "Apple", "Mango", "Cherry");

        // Find the maximum element using a custom comparator based on string length
        String maxFruitByLength = Collections.max(fruits, Comparator.comparingInt(String::length));

        System.out.println("Maximum fruit by length: " + maxFruitByLength); // Output: Banana
    }
}

Explanation

Natural Ordering:
In the first example, Collections.max(numbers) uses the natural ordering of integers (which implement the Comparable interface) to find the maximum value.

Custom Comparator:
In the second example, Collections.max(fruits, Comparator.comparingInt(String::length)) uses a custom comparator that compares the lengths of the strings to determine which string is the longest.

The Collections.max method is useful for determining the largest element in a collection of any type, as long as the elements can be compared either through natural ordering or a specified comparator. This method is particularly helpful when you need to sort or organize data dynamically based on different criteria.


This content originally appeared on DEV Community and was authored by realNameHidden


Print Share Comment Cite Upload Translate Updates
APA

realNameHidden | Sciencx (2024-09-22T04:04:51+00:00) Collections.max() method in Java. Retrieved from https://www.scien.cx/2024/09/22/collections-max-method-in-java/

MLA
" » Collections.max() method in Java." realNameHidden | Sciencx - Sunday September 22, 2024, https://www.scien.cx/2024/09/22/collections-max-method-in-java/
HARVARD
realNameHidden | Sciencx Sunday September 22, 2024 » Collections.max() method in Java., viewed ,<https://www.scien.cx/2024/09/22/collections-max-method-in-java/>
VANCOUVER
realNameHidden | Sciencx - » Collections.max() method in Java. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2024/09/22/collections-max-method-in-java/
CHICAGO
" » Collections.max() method in Java." realNameHidden | Sciencx - Accessed . https://www.scien.cx/2024/09/22/collections-max-method-in-java/
IEEE
" » Collections.max() method in Java." realNameHidden | Sciencx [Online]. Available: https://www.scien.cx/2024/09/22/collections-max-method-in-java/. [Accessed: ]
rf:citation
» Collections.max() method in Java | realNameHidden | Sciencx | https://www.scien.cx/2024/09/22/collections-max-method-in-java/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.