黑马程序员技术交流社区

标题: 【石家庄校区】学习总结 [打印本页]

作者: 李志旭    时间: 2019-5-19 10:14
标题: 【石家庄校区】学习总结
Lambda表达式(day13)
Lambda表达式的标准格式【理解】
​        (形式参数) -> {代码块}
Lambda表达式和匿名内部类的区别【理解】
方法引用符
::  该符号为引用运算符,而它所在的表达式被称为方法引用
格式
类名::静态方法
对象::成员方法
类名::成员方法
类名::new
函数式接口(day14)
有且仅有一个抽象方法的接口
@FunctionalInterface
放在接口定义的上方:如果接口是函数式接口,编译通过;如果不是,编译失败
常用函数式接口之Supplier【应用】
Supplier<T>接口也被称为生产型接口,如果我们指定了接口的泛型是什么类型,那么接口中的get方法就会生产什么类型的数据供我们使用。
只有一个无参的方法
方法名
说明
T get()
按照某种实现逻辑(由Lambda表达式实现)返回一个数据

常用函数式接口之Consumer【应用】
Consumer<T>接口也被称为消费型接口,它消费的数据的数据类型由泛型指定
Consumer<T>:包含两个方法
方法名
说明
void accept(T t)
对给定的参数执行此操作
default Consumer<T> andThen(Consumer after)
返回一个组合的Consumer,依次执行此操作,然后执行 after操作

常用函数式接口之Predicate【应用】
Predicate<T>接口通常用于判断参数是否满足指定的条件
方法名
说明
boolean test(T t)
对给定的参数进行判断(判断逻辑由Lambda表达式实现),返回一个布尔值
default Predicate<T> negate()
返回一个逻辑的否定,对应逻辑非
default Predicate<T> and(Predicate other)
返回一个组合判断,对应短路与
default Predicate<T> or(Predicate other)
返回一个组合判断,对应短路或

常用函数式接口之Function【应用】
Function<T,R>接口通常用于对参数进行处理,转换(处理逻辑由Lambda表达式实现),然后返回一个新的值
方法名
说明
R apply(T t)
将此函数应用于给定的参数
default <V> Function andThen(Function after)
返回一个组合函数,首先将该函数应用于输入,然后将after函数应用于结果

Stream流的常见生成方式
生成Stream流的方式
使用默认方法stream()生成流, default Stream<E> stream()
把Map转成Set集合,间接的生成流
通过Stream接口的静态方法of(T... values)生成流
Stream流中间操作方法
常见方法
方法名
说明
Stream<T> filter(Predicate predicate)
用于对流中的数据进行过滤
Stream<T> limit(long maxSize)
返回此流中的元素组成的流,截取前指定参数个数的数据
Stream<T> skip(long n)
跳过指定参数个数的数据,返回由该流的剩余元素组成的流
static <T> Stream<T> concat(Stream a, Stream b)
合并a和b两个流为一个流
Stream<T> distinct()
返回由该流的不同元素(根据Object.equals(Object) )组成的流
Stream<T> sorted()
返回由此流的元素组成的流,根据自然顺序排序
Stream<T> sorted(Comparator comparator)
返回由该流的元素组成的流,根据提供的Comparator进行排序
<R> Stream<R> map(Function mapper)
返回由给定函数应用于此流的元素的结果组成的流
IntStream mapToInt(ToIntFunction mapper)
返回一个IntStream其中包含将给定函数应用于此流的元素的结果

Stream流终结操作方法
终结操作的意思是,执行完此方法之后,Stream流将不能再执行其他操作。
方法名
说明
void forEach(Consumer action)
对此流的每个元素执行操作
long count()
返回此流中的元素数

Stream流的收集操作【应用】
对数据使用Stream流的方式操作完毕后,可以把流中的数据收集到集合中。
方法名
说明
R collect(Collector collector)
把结果收集到集合中

方法名
说明
public static <T> Collector toList()
把元素收集到List集合中
public static <T> Collector toSet()
把元素收集到Set集合中
public static Collector toMap(Function keyMapper,Function valueMapper)
把元素收集到Map集合中

类加载器(day15)
类加载
类加载器
类加载器的作用
JVM的类加载机制
Java中的内置类加载器
ClassLoader 中的两个方法
方法名
说明
static ClassLoader getSystemClassLoader()
返回用于委派的系统类加载器
ClassLoader getParent()
返回父类加载器进行委派

反射反射的概述【理解】
获取Class类对象的三种方式【应用】
三种方式分类
反射获取构造方法并使用
Class类获取构造方法对象的方法
方法名
说明
Constructor<?>[] getConstructors()
返回所有公共构造方法对象的数组
Constructor<?>[] getDeclaredConstructors()
返回所有构造方法对象的数组
Constructor<T> getConstructor(Class<?>... parameterTypes)
返回单个公共构造方法对象
Constructor<T> getDeclaredConstructor(Class<?>... parameterTypes)
返回单个构造方法对象

Constructor类用于创建对象的方法
方法名
说明
T newInstance(Object...initargs)
根据指定的构造方法创建对象

反射获取成员变量并使用【应用】
Class类获取成员变量对象的方法
方法名
说明
Field[] getFields()
返回所有公共成员变量对象的数组
Field[] getDeclaredFields()
返回所有成员变量对象的数组
Field getField(String name)
返回单个公共成员变量对象
Field getDeclaredField(String name)
返回单个成员变量对象

Field类用于给成员变量赋值的方法
方法名
说明
voidset(Object obj,Object value)
给obj对象的成员变量赋值为value

反射获取成员方法并使用【应用】
Class类获取成员方法对象的方法
方法名
说明
Method[] getMethods()
返回所有公共成员方法对象的数组,包括继承的
Method[] getDeclaredMethods()
返回所有成员方法对象的数组,不包括继承的
Method getMethod(String name, Class<?>... parameterTypes)
返回单个公共成员方法对象
Method getDeclaredMethod(String name, Class<?>... parameterTypes)
返回单个成员方法对象

Method类用于执行方法的方法
方法名
说明
Objectinvoke(Object obj,Object... args)
调用obj对象的成员方法,参数是args,返回值是Object类型








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