Java Stream操作详解与示例

需积分: 0 2 下载量 146 浏览量 更新于2024-08-04 收藏 225KB PDF 举报
"该资源主要涉及Java编程语言中的Stream API的使用方法,包括常见的操作如peek、sorted、map、collect、joinning、skip以及Comparator的使用。" 在Java 8中,Stream API引入了一种新的处理数据的方式,使得对集合的操作更加简洁高效。以下是从给定内容中提取出的关于Stream API的知识点: 1. stream():这是创建流的起点,通常用于集合类,例如List、Set或Map。`list.stream()`会返回一个由list元素组成的流。 2. peek():此操作允许我们在不改变流中元素的情况下对每个元素执行一些操作。在示例中,`peek(obj->obj.put("y",...))`是在每个对象上执行一个操作,但并不影响流的最终结果。 3. sorted():这个操作符用于对流中的元素进行排序。`sorted(Comparator.comparing(ChartsOfFee::getName))`是根据ChartsOfFee对象的getName方法返回的值进行排序。 4. map():map函数用于将流中的每个元素转换成另一个形式。例如,`map(obj->DataTran.ObjectToString(map,"merNo"))`将流中的每个对象转换为其"merNo"字段的字符串表示。 5. collect():collect方法用于将流的元素聚合到一个集合中。`collect(Collectors.toList())`会将流的元素收集到一个新的List中。 6. Collectors.joining():这个方法用于将流中的元素连接成一个字符串。`collect(Collectors.joining(","))`会用逗号将所有元素连接起来。 7. mapToLong() 和 sum():这两个方法常用于数值类型的流,`mapToLong()`将流中的每个元素转换为Long,然后`sum()`计算所有元素的总和。 8. skip():此操作用于忽略流的前n个元素。`skip(5)`会跳过流的前五个元素。 9. Stream.of():这个静态方法可以创建一个由给定元素构成的新流。`Stream.of(1,2,3,4,5,6,7,8)`创建了一个包含这些整数的流。 10. Comparator.comparing():此方法用于创建一个比较器,可以根据提供的函数来比较流中的元素。在`mergedDataList.stream().sorted(Comparator.comparing(ChartsOfFee::getName))`中,比较的是ChartsOfFee对象的getName方法的返回值。 以上就是从给定的文件内容中解析出的Stream API使用的关键知识点。Stream API提供了丰富的操作,使Java程序员能够以更声明式的方式处理数据,从而提高代码的可读性和效率。