Stream API的使用

使用Stream API对集合中的数据进行操作,就类似使用SQL语句对数据库执行查询

  1. Stream不会存储数据
  2. Stream不会改变源对象,而是返回一个持有结果的新Stream
  3. Stream是延迟执行的,只有在需要结果的时候才执行,即只有执行终止操作,才会执行中间的所有操作,然后返回最终结果
  4. Stream一旦执行终止操作,就不能再执行其他中间操作和终止操作了。
  5. 使用场景:可以用于Java处理非关系型数据库操作,如MongDb,Redis

Stream对集合的操作有:排序、查找、过滤、遍历、映射等,是面向CPU的;
使用步骤:

一、创建Stream

1、集合.stream()返回一个Stream对象
串行流 如:

	ArrayList list = new ArrayList<>();
    Stream stream = list.stream();
 
  

并行流 如:

	Stream stream = list.parallelStream();
 
  

2、Arrays.stream(数组) 返回一个Stream对象

	Integer[] integers = new Integer[10];
    Stream stream = Arrays.stream(integers);
    int[] ints = new int[10];
    IntStream stream = Arrays.stream(ints);

3、Stream.of()返回一个Stream对象

	Stream stream = Stream.of(T... parameters);
	Stream stream = Stream.of(T t);

、 一系列中间操作:常与四大核心函数接口配合使用

Stream API的使用_第1张图片
Stream API的使用_第2张图片
Stream API的使用_第3张图片

映射常与四大核心函数接口的Function函数型接口配合使用,返回自己想得到的数据 过滤/筛选
常与四大核心函数接口的Predicate判断型接口配合使用
遍历/输出常与四大核心函数接口的Consumer消费型接口配合使用

三、终止操作
Stream API的使用_第4张图片
Stream API的使用_第5张图片
Stream API的使用_第6张图片
Collectors类提供了很多返回一个集合的静态方法,如:

collect(Collectors.toList())

你可能感兴趣的:(Java,java,开发语言)