黑马程序员技术交流社区

标题: 【成都】 [打印本页]

作者: HGQ    时间: 2018-12-26 20:37
标题: 【成都】
Supplier<T>接口
        是生产接口,里面对应的抽象方法是T get(); 返回值类型就是接口上定义的类型也就是它接口泛型定义什么类型,get方法返回的就是什么类型。
Consumer<T>接口
        消费接口,具体消费就是不返回任何类型,在逻辑代码中打印输出和使用
        里面对应的抽象方法是 void accept(T t)
        接口中要有默认方法Consumer andThen(Consumer<? super T> after)。
Predicate<T>接口
        判断的接口,返回值是boolean结果
        里面有对应的抽象方法 boolean test(T t)
        &&  and()
        ||    or()
        !        negate
Function<T,R>接口
        转换的方法
        里面的抽象方法有 R apply(T t)
        默认方法 andThen()
Stream流       
获取流对象两种方式
1.在java8之后,每个单例集合中都有一个方法Stream()方法,把我们单例集合变成Stream对象进行操作
2.用Stream对象中的of去添加元素返回Stream对象进行使用
常用方法
        延迟方法,方法的返回值类型还是Stream对象,特点就是可以链式编程
        终结方法,方法的放回值不是Stream对象,不能继续调用Stream中的方法
常用方法
1,        void forEach(consumer<? super T> action):循环遍历Stream中的元素
2,        Stream<T> filter(Predicate<? super T> predicate):过滤集合中的元素,如果是true就存储,如果是false就过滤
3,        Stream<R> map(Function<? super T, ? extends R>):转换的方法也叫映射。
4,        long count():获取Stream流中的元素个数
5,        Stream<T> limit(long maxSize):截取指定参数的个数,从头截取
6,        Stream<T> skip(long n):希望跳过前几个元素的方法,
7,        Stream <T>concat(Stream<?extends T> a,Stream<?extends T > b):拼接方法,把两个Stream流对象拼接成一个流对象。
方法引用
概念:帮助我们再一次去简化lambda的格式
格式        对象名::方法名称





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2