黑马程序员技术交流社区
标题:
我的学习笔记
[打印本页]
作者:
莫依
时间:
2019-4-18 16:08
标题:
我的学习笔记
1. #### 函数式接口
- 规则:一个接口且仅有一个抽象方法
- 注解:@FunctionalInterface
2. #### 函数式接口的使用
- 作为变量初始化
接口类型 变量 = lambda表达式; (参数列表) -> {}
- 作为方法参数
public static 方法名(函数式接口 变量1){
变量1.方法(参数列表);
}
方法名(lambda表达式);
- 作为方法返回值
public static 函数式接口 方法名(){
return lambda表达式;
} 4. #### Stream流:
- 简化对集合或者数组等的一系列操作,包含循环,过滤,统计等等
- Stream操作的三个环节
常用生成流
Collection集合的stream()的方法--- list set
Map集合借助keySet(),values,entrySet()
使用Stream类的静态方法of()对数组或者多参进行流的转化
中间操作
filter:过滤
limit:截取
skip:跳过
concat:合并
distinct:去重
sorted:
sorted(Comparator c):
map:将流转换其他类型的流
mapToInt:转换为int
终结操作
forEach:循环处理
count:统计个数
流的收集:将流中的数据收集到集合中,方便后续的使用
将流数据收集到list中: List<泛型> list = stream.collect(Collectors.toList())
将数据收集到set中: Set<泛型> set = stream.collect(Collectors.toSet())
将流数据收集到Map: Map<泛型1,泛型2> map = stream.collect(Collectors.toMap( Function keyMapper,Function valueMapper ));
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2