龙空技术网

读Java8函数式编程笔记03_高级集合类和收集器

躺着的柒 58

前言:

现在各位老铁们对“java复杂函数公式计算”大概比较关注,我们都需要了解一些“java复杂函数公式计算”的相关内容。那么小编也在网上汇集了一些有关“java复杂函数公式计算””的相关知识,希望看官们能喜欢,朋友们一起来了解一下吧!

读Java8函数式编程笔记03_高级集合类和收集器

1.方法引用1.1.一种引用方法的轻量级语法1.1.1.提供了一种简短的语法1.1.2.标准语法为Classname::methodName1.2.凡是使用Lambda表达式的地方,就可以使用1.3.自动支持多个参数1.3.1.前提是选对了正确的函数接口2.出现顺序2.1.流是有序的2.1.1.流中的元素都是按顺序处理的2.2.依赖于数据源和对流的操作2.3.在一个有序集合中创建一个流时,流中的元素就按出现顺序排列2.3.1.List2.4.如果集合本身就是无序的,由此生成的流也是无序的2.4.1.HashSet2.5.一些操作在有序的流上开销更大,调用unordered方法消除这种顺序就能解决该问题2.6.大多数操作都是在有序流上效率更高,比如filter、map和reduce等2.7.使用并行流时,forEach方法不能保证元素是按顺序处理的2.7.1.如果需要保证按顺序处理,应该使用forEachOrdered方法3.收集器3.1.可用来计算流的最终值,是reduce方法的模拟3.1.1.生成最终结果的一剂配方3.1.2.一种通用的、从流生成复杂值的结构3.2.转换成其他集合3.2.1.已有代码是为集合编写的,因此需要将流转换成集合传入3.2.2.在集合上进行一系列链式操作后,最终希望生成一个值3.2.3.写单元测试时,需要对某个具体的集合做断言3.2.4.toList3.2.5.toSet3.2.6.toCollection3.3.转换成值3.3.1.maxBy3.3.2.minBy3.3.3.按某种特定的顺序生成一个值3.3.4.averagingInt3.3.4.1.接受一个Lambda表达式作参数,将流中的元素转换成一个整数,然后再计算平均数3.4.数据分块3.4.1.分解成两个集合3.4.2.partitioningBy3.4.2.1.接受一个流,并将其分成两部分3.5.数据分组3.5.1.使用任意值对数据分组3.5.2.groupingBy3.5.2.1.接受一个分类函数,用来对数据分组3.5.2.2.类似SQL中的group by操作3.6.字符串3.6.1.joining3.7.其他3.7.1.counting3.7.2.mapping3.7.2.1.在收集器的容器上执行类似map的操作。但是需要指明使用什么样的集合类存储结果3.7.3.summarizingLong3.7.4.reducing3.8.下游收集器3.8.1.生成部分结果的配方3.8.2.主收集器中会用到下游收集器3.9.特征3.9.1.一组描述收集器的对象,框架可以对其适当优化3.9.2.characteristics方法定义了特征

标签: #java复杂函数公式计算