Java Collections max()
Java Collections max()
max()是Java Collections 类方法,该方法返回给定输入的最大值。集合中的所有元素必须实现Comparable接口。 Java max()方法有 两种类型,可以根据其参数加以区分。这些是:
Java Collections max(coll)方法Java Collections min(coll,comp)方法
Java Collections max(coll)方法
Java Collections 类的 max()方法是用于根据给定集合的元素的自然顺序获取最大元素。
Java Collections max(coll,comp)方法
Java Collections 的 max()方法根据指定的比较器引发的顺序,使用class类获取给定集合的最大元素。
语法
以下是 max()方法的声明:
public static <T extends Object & Comparable<? super T>> T max(Collection<? extends T> coll)
public static <T> T max(Collection<? extends T> coll, Comparator<? super T> comp)
参数
参数 | 说明 | 必需/可选 |
coll | 这是要确定其最大元素的集合。 | 必需 |
comp | 它是我们用来确定最大元素的比较器。 | 必需 |
返回
方法 | 返回 |
max(Collection <?extends T> coll) | 根据元素的自然顺序返回给定集合的最大元素。 |
max(Collection <?extends T> coll,Comparator <?super T> comp) | 它根据指定可比对象的顺序返回给定集合的最大元素。 |
异常
max()方法引发以下异常-
ClassCastException -引发此异常如果集合包含不可相互比较的元素(例如,字符串和整数)。
NoSuchElementException -如果集合为空,则抛出此异常。
兼容版本
Java 1.4及更高版本
示例1
import java.util.*;
public class CollectionsMaxExample1 {
public static void main(String[] args) {
//Create collection
List<String> list = new ArrayList<String>();
//Add values in the list
list.add("A");
list.add("B");
list.add("E");
list.add("C");
list.add("S");
//Comparing using order of the specified comparable
System.out.println("Max val: " + Collections.max(list,null));
}
}
输出:
Max val: S
示例2
import java.util.*;
public class CollectionsMaxExample2 {
public static void main(String[] args) {
//Create collections lists
List<Integer> list = Arrays.asList(20, 10, 100, 140, 250);
Integer max = Collections.max(list);
System.out.println("Maximum element is: "+max);
}
}
输出:
Maximum element is: 250
示例3
import java.util.*;
public class CollectionsMaxExample3 {
public static void main(String[] args) {
//Create collections lists
List<Integer> list = Arrays.asList(201, 101, 1001, 140, 2501);
//Comparing using order of the specified comparable
Integer max = Collections.max(list, Collections.reverseOrder());
System.out.println("Output: "+max);
}
}
输出:
Output: 101
示例4
import java.util.*;
public class CollectionsMaxExample4 {
public static void main(String[] args) {
//Create collection
List<String> list = new ArrayList<String>();
//Add values in the list
list.add("Java");
list.add("COBOL");
list.add("PHP");
list.add("Ruby");
list.add("XML");
//Comparing using natural ordering
System.out.println("Maximum Element is: " + Collections.max(list));
List<Integer> iList = Arrays.asList(-20, -10, -100, -140, -250);
Integer max = Collections.max(iList);
System.out.println("Maximum Value is: "+max);
}
}
输出:
Maximum Element is: XML Maximum Value is: -10