Java Collections min()方法及实例

Java Collections min()方法及实例

min(Collection<? extends T> coll)

java.util.Collections 类的 min() 方法是用来返回给定集合中的最小元素,根据其元素的自然排序。集合中的所有元素必须实现可比较接口。此外,集合中的所有元素必须是相互比较的(也就是说,e1.compareTo(e2)不能对集合中的任何元素e1和e2抛出ClassCastException)。

这个方法对整个集合进行迭代,因此它需要的时间与集合的大小成正比。

语法

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

参数: 该方法将集合 coll 作为参数,其最小元素需要被确定。

返回值: 本方法根据元素的自然排序,返回给定集合的最小元素。

异常: 如果集合为空,该方法会抛出 NoSuchElementException

下面是说明min()方法的例子

例1 :

// Java program to demonstrate
// min() method
// for <Integer> Value
  
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv)
        throws Exception
    {
  
        try {
  
            // create link list object
            List<Integer> list = new LinkedList<Integer>();
  
            // populate the list
            list.add(10);
            list.add(20);
            list.add(30);
            list.add(40);
  
            // printing the List
            System.out.println("List: " + list);
  
            // getting minimum value
            // using min() method
            int min = Collections.min(list);
  
            // printing the min value
            System.out.println("Minimum value is: " + min);
        }
  
        catch (NoSuchElementException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}

输出。

List: [10, 20, 30, 40]
Minimum value is: 10

例2: 演示NoSuchElementException

// Java program to demonstrate
// min() method for NoSuchElementException
  
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv)
        throws Exception
    {
  
        try {
  
            // create link list object
            List<Integer> list = new LinkedList<Integer>();
  
            // printing the List
            System.out.println("List: " + list);
  
            // getting minimum value
            // using min() method
            System.out.println("Trying to get"
                               + " the minimum value "
                               + "with empty list");
  
            int min = Collections.min(list);
  
            // printing the min value
            System.out.println("Min value is: " + min);
        }
  
        catch (NoSuchElementException e) {
  
            System.out.println("Exception thrown : " + e);
        }
    }
}

输出。

List: []
Trying to get the minimum value with empty list
Exception thrown : java.util.NoSuchElementException

min(Collection<? extends T> coll, Comparator<? super T> comp)

java.util.Col lections类的 min(Collections, Comparator) 方法是用来返回给定集合中的最小元素,根据指定的比较器所引起的顺序。集合中的所有元素必须通过指定的比较器进行相互比较。

这个方法对整个集合进行迭代,因此它需要的时间与集合的大小成正比。

参数: 该方法需要以下参数。

  • coll- 要确定其最小元素的集合。
  • comp- 用来确定最小元素的比较器。一个空值表示应该使用元素的自然排序。

返回值: 该方法根据指定的比较器返回给定集合的最小元素。

异常: 如果集合为空,该方法会抛出 NoSuchElementException

下面是说明min()方法的例子

例1 :

// Java program to demonstrate
// min() method
// for Integer
  
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv) throws Exception
    {
        try {
  
            // create link list object
            List<Integer> list = new LinkedList<Integer>();
  
            // populate the list
            list.add(10);
            list.add(20);
            list.add(30);
            list.add(40);
  
            // printing the List
            System.out.println("List: " + list);
  
            // getting minimum value
            // using min() method
            int min = Collections.min(list,
                                      Collections.reverseOrder());
  
            // printing the min value
            System.out.println("Min value by reverse order is: "
                               + min);
        }
  
        catch (NoSuchElementException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}

输出。

List: [10, 20, 30, 40]
Min value by reverse order is: 40

例2: 演示NoSuchElementException

// Java program to demonstrate
// min() method for NoSuchElementException
  
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv)
        throws Exception
    {
  
        try {
  
            // create link list object
            List<Integer> list = new LinkedList<Integer>();
  
            // printing the List
            System.out.println("List: " + list);
  
            // getting minimum value
            // using min() method
            System.out.println("Trying to get"
                               + " the minimum value "
                               + "with empty list");
  
            int min = Collections.min(list,
                                      Collections.reverseOrder());
  
            // printing the min value
            System.out.println("Min value is: " + min);
        }
  
        catch (NoSuchElementException e) {
  
            System.out.println("Exception thrown : " + e);
        }
    }
}

输出。

List: []
Trying to get the minimum value with empty list
Exception thrown : java.util.NoSuchElementException

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程