java8 List集合的排序,求和,取最大值,按照條件過濾


public class Java8Test {

    public static void main(String[] args) {

        Person p1 = new Person("麻子", 31);
        Person p2 = new Person("李四", 20);
        Person p3 = new Person("王五", 26);

        List<Person> personList = new ArrayList<Person>();
        personList.add(p1);
        personList.add(p2);
        personList.add(p3);

        //java8遍歷
        personList.forEach(p -> System.out.println(p.getAge()));
        //按照person的 age進行排序
        //方法一
        personList.sort((o1, o2) -> o1.getAge().compareTo(o2.getAge())); //正序
        personList.sort((o1, o2) -> o2.getAge().compareTo(o1.getAge())); //倒序
        //方法二
        personList.sort(Comparator.comparing(Person::getAge)); // 正序
        personList.sort(Comparator.comparing(Person::getAge).reversed()); // 倒序
        //遍歷
        personList.forEach(p -> System.out.println(p.getAge()));

        System.out.println("========================================");

        //獲取年齡最大的Person
        Person maxAgePerson = personList.stream().max(Comparator.comparing(Person::getAge)).get();
        System.out.println(maxAgePerson.getAge());

        System.out.println("========================================");

        //獲取年齡最小的Person
        Person minAgePerson = personList.stream().min(Comparator.comparing(Person::getAge)).get();
        System.out.println(minAgePerson.getAge());

        //過濾出年齡是20的person,想過濾出什么條件的都可以
        List<Person> personList1 = personList.stream().filter(person -> person.getAge() == 20).collect(Collectors.toList());

        //統計出年齡等於20的個數
        long count = personList.stream().filter(person -> person.getAge() == 20).count();

        //獲得年齡的平均值
        double asDouble = personList.stream().mapToInt(person -> person.getAge()).average().getAsDouble();

        //獲得年齡的求和
        int sum = personList.stream().mapToInt(person -> person.getAge()).sum();

    }
}

  我在騰訊微視玩短視頻 搜索用戶  “lei9527” ,可以相互關注下哈


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM