Java Collections max()方法与示例

集合类max()方法

语法:

    public static Type max(Collection co);
    public static Type max(Collection co, Comparator com);
  • max()方法在java.util包中可用。

  • max(Collection co)方法用于根据自然排序返回给定集合的最大值元素。

  • max(Collection co,Comparator com)方法用于返回给定集合的最大值元素,这取决于将给定Comparator对象作为自定义排序的依据。

  • 这些方法在返回最大元素时可能会引发异常。

    • ClassCastException:当给定的collection元素相互不可比时,可能会抛出此异常。

    • NoSuchElementException:当给定集合为“空白”(即没有元素)时,可能会抛出此异常。

  • 这些是静态方法,可以通过类名进行访问,如果尝试使用类对象访问这些方法,则也不会出现任何错误。

参数:

  • 在第一种情况下,max(Collection co)

    • 集合co –表示集合对象,其给定集合对象的最大值元素。

  • 在第一种情况下,max(Collection co,Comparator com)

    • 集合co –表示集合对象,其给定集合对象的最大值元素。

    • 比较器com –表示用来计算最大元素的比较器。

返回值:

在这两种情况下,方法的返回类型均为Type,它根据给定的Comparator返回给定集合的最大值元素。

示例

//Java程序演示示例 
//的max()的类别方法

import java.util.*;

public class MaxOfCollections {
    public static void main(String args[]) {
        //实例化一个ArrayList-  	   
        ArrayList arr_l = new ArrayList();

        //通过使用add()方法是添加
        //数组列表中的对象 
        arr_l.add(20);
        arr_l.add(10);
        arr_l.add(50);
        arr_l.add(40);
        arr_l.add(80);

        //显示ArrayList-
        System.out.println("arr_l: " + arr_l);

        //通过使用max(arr_l,Comparator)方法是
        //的最大元素
        //定义的比较器对象,在这里我们设置null-
        //这意味着比较器遵循默认顺序

        System.out.print("Collections.max(arr_l,null): ");
        System.out.print(Collections.max(arr_l, null));
        System.out.println();

        //通过使用max(arr_l)方法是
        //的最大元素
        //不使用比较器对象的自然顺序
        System.out.print("Collections.max(arr_l): ");
        System.out.print(Collections.max(arr_l));
    }
}

输出结果

arr_l: [20, 10, 50, 40, 80]
Collections.max(arr_l,null): 80
Collections.max(arr_l): 80