目标:测试option的过滤,链式操作:

代码:

package test;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Optional;
import java.util.function.Consumer;
import java.util.function.Predicate;

public class optionnaltest {
     
    class user{
        String name;
        String age;
        user(){}
        user(String name,String age){this.name = name;this.age=age;}
        void intoduce() {
            System.out.println("i am "+name+",i am "+age+" this year!");
        }
        String tosString() {
            return new StringBuffer().append("{name:").append(name+",age:").append(age+"}").toString();
        }
    }

    public static void main(String[] args) {
        List<user> list = new ArrayList<user>();
        Arrays.asList(10,11,12,14,16,20).forEach(new Consumer<Integer>() {

            @Override
            public void accept(Integer t) {
                optionnaltest op = new optionnaltest();
                if(t <12)
                    list.add(op.new user());
                else
                    list.add(op.new user("name"+t,t+""));
            }
        });
        List<user> tm = new ArrayList<user>();
        list.forEach(new Consumer<user>() {
            @Override
            public void accept(user t) {
                boolean flag = Optional.ofNullable(t).filter(s->s.name!=null).isPresent();
                tm.add(!flag?t:null);
            }
        });
        list.removeAll(tm);
        list.forEach(new Consumer<user>() {
            @Override
            public void accept(user t) {
                System.out.println(t.tosString());
            }
        });
    }
    
    
}

 

相关文章:

  • 2022-01-04
  • 2022-12-23
  • 2022-12-23
  • 2021-11-22
  • 2021-05-29
  • 2021-12-19
  • 2021-09-17
猜你喜欢
  • 2021-12-30
  • 2021-07-07
  • 2021-07-25
  • 2022-12-23
  • 2022-02-01
  • 2021-10-27
  • 2022-12-23
相关资源
相似解决方案