获取List集合中的最大值和最小值
Collections
String、Integer、Double类型
- 当List中元素为String、Integer、Double类型时,可以使用Collections类中的 max 和 min 方法直接获取最大值和最小值;
public static void main(String[] args) {
List<String> stringList = new ArrayList<>();
stringList.add("10");
stringList.add("34");
stringList.add("67");
stringList.add("84");
stringList.add("1");
System.out.println("(String类型)最大值=" + Collections.max(stringList));
System.out.println("(String类型)最小值=" + Collections.min(stringList));
List<Integer> integerList = new ArrayList<>();
integerList.add(5);
integerList.add(38);
integerList.add(52);
integerList.add(88);
integerList.add(100);
System.out.println("(Integer类型)最大值=" + Collections.max(integerList));
System.out.println("(Integer类型)最小值=" + Collections.min(integerList));
List<Double> doubleList = new ArrayList<>();
doubleList.add(1.5);
doubleList.add(45.6);
doubleList.add(88.08);
doubleList.add(55.2);
doubleList.add(100.01);
System.out.println("(Double类型)最大值=" + Collections.max(doubleList));
System.out.println("(Double类型)最小值=" + Collections.min(doubleList));
}
- **注意:**当List元素因为类型为String时,可能会出现以下问题;
- 当最大值为10或10的倍数时不生效,为最小值时生效;
- 当元素数据全部为10或10的倍数时,最大值和最小值均生效;
对象类型
- 当List中元素为对象时,比如想要获取年龄最大和最小人的信息;
排序
Integer类型
- 当List元素类型为Integer时可以使用排序,比如使用冒泡排序将List元素按照从大到小排序,然后取List的第一个和最后一个元素获取最大值和最小值;