Optional类的filter方法

时间:2025-02-26 17:43:51

  filter方法可对Optional内对象进行过滤。

1. 准备类

    public class Staff {
        String name;
        Integer age;
        public Staff(){

        }
        public Staff(String name, Integer age){
             = name;
             = age;
        }
        ... // getter setter
       
    }

 

2. 示例

    @Test
    void filterOptionalTest(){
        ArrayList<Staff> staffList = new ArrayList<>();
        (new Staff("Jerome",28));
        (new Staff("Chris",44));

        ("----------------List Stream Filter--------------------------");
        String name = ().filter(s -> () < 30).map(s -> ()).findFirst().orElseGet(() -> "Null");
        (name);

        ("----------------Optional Filter--------------------------");
        name = ((0)).filter(s -> () > 30).map(s -> ()).orElse("Null");
        (name);

        name = ((1)).filter(s -> () > 30).map(s -> ()).orElse("Null");
        (name);

    }

显示

----------------List Stream Filter--------------------------
Jerome
----------------Optional Filter--------------------------
Null
Chris