Java8之stream流
流是什么 流是Java8 API的新功能,它允许使用声明性方式处理集合。可以将其看成遍历数据集的高级迭代器。此外,流还可以透明地并行处理。 例如下面这行代码: // 利用多核架构并行处理 menus.parallelStream() // 选出400卡路里以下的菜 .filter(dish -> dish.getCalories() < 400) // 按照卡路里排序 .sorted(Comparator.comparing(Dish::getCalories)) // 提取菜名 .map(Dish::getName) // 只选择头三个 .limit(3L) // 将结果保存在List集合里 .collect(Collectors.toList()) // 打印结果 .forEach(System.out::println); 流的优点: 代码是以声明性方式写的:说明想要完成什么而非说明如何实现该操作。 可以将多个基础操作链接起来,以此来表达复杂的数据处理流水线,同时保持代码清晰可读。 menus=>start: menus List=>end: List f...