java中Steam流的用法

一.Sream

Sream流结合了Lambda表达式,简化集合、数字的操作。

二.使用

1.过滤(filter)

Stream<String> stream = list.stream();
stream.filter(str -> str.length() > 5);

2.去重(distinct)

Stream<String> stream = list.stream();
stream.distinct();

3.排序(sorted)

Stream<String> stream = list.stream();
stream.sorted(Comparator.comparing(String::length));

4.转换(map)

Stream<String> stream = list.stream();
stream.map(String::int);

5.获取前几个元素(limt)

  int [] arrs = {3,5,4,1,9,7,8,4,2,1};
         Arrays.stream(arrs).limit(5).forEach(a->{
             System.out.println(a);
         });

6.跳过前几个元素(skip )

int [] arrs = {3,5,4,1,9,7,8,4,2,1};
         Arrays.stream(arrs).skip(5).forEach(a->{
             System.out.println(a);
         });

7.调试打印(peek)

Stream中的peek()方法可以在Stream流中的每个元素执行一个对应的操作,而不会修改Stream流中的元素。它的作用类似于forEach()方法,但它不是终止操作,可以被用于调试和日志输出。

8.计算(reduce)

int reduce = Arrays.stream(arr).reduce((x, y) -> x - y).getAsInt();

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java(Stream)是一种用于处理集合数据的抽象概念。提供了一种更简洁、更灵活的方式来处理集合的元素。在Java 8及之后的版本,引入了Stream类,它提供了一系列的操作方法,可以对集合进行过滤、映射、排序等操作。 使用的一般步骤如下: 1. 创建:可以通过集合或数组来创建。 - 通过集合创建:使用`stream()`方法将集合转换为。例如:`List<String> list = Arrays.asList("a", "b", "c"); Stream<String> stream = list.stream();` - 通过数组创建:使用`Arrays.stream()`方法将数组转换为。例如:`int[] array = {1, 2, 3}; IntStream stream = Arrays.stream(array);` 2. 间操作:对进行过滤、映射、排序等操作,返回一个新的。常用的间操作包括: - `filter(Predicate<T> predicate)`:根据给定的条件过滤的元素。 - `map(Function<T, R> mapper)`:将的元素按照给定的映射函数进行转换。 - `sorted()`:对的元素进行排序。 - `distinct()`:去除重复的元素。 3. 终端操作:对进行聚合、收集、遍历等最终操作,返回一个结果或将转换为其他数据结构。常用的终端操作包括: - `forEach(Consumer<T> action)`:对的每个元素执行给定的操作。 - `collect(Collector<T, A, R> collector)`:将的元素收集到一个集合。 - `count()`:返回元素的个数。 - `min(Comparator<T> comparator)`:返回的最小元素。 这只是的基本用法Java还提供了更多的操作方法和功能,可以根据具体需求进行学习和使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值