java中经常要用到判断和赋值(或者输出等操作),Predicate和Consumer就可以很好的解决这个问题。
Consumer接口的方法为accept(),可以定义多个不同consumer,实现不同的逻辑,实现代码的复用。
@Data
public class Person {
private String name;
public static void main(String[] args) {
Person person = new Person();
person.setName("zhangsan");
Consumer<Person> consumer=(s)->{
s.setName("lisi");
System.out.println(s.getName());
};
Consumer<Person> consumer2=(s)-> {
System.out.println(s.getName());
};
//这说明consumer可以修改传入对象的内部值,以便于后续继续操作
consumer.andThen(consumer2).accept(person); // lisi lisi
System.out.println(person.getName());
}
}
chushiyunen
发布了336 篇原创文章 · 获赞 5 · 访问量 1万+
私信
关注