Stream流练习题
API:
- 过滤和收集:
- 给定一个整数列表
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
,使用 Stream API 过滤出所有的偶数,并将它们收集到一个新的列表中。
- 给定一个整数列表
- 查找和匹配:
- 使用 Stream API 确定上述列表中是否有任何数字能被 4 整除。
- 映射和排序:
- 对上述列表中的每个数字进行平方操作,然后将结果排序(降序)。
- 计数和归约:
- 使用 Stream API 计算上述列表中所有数字的总和。
- 计算列表中所有数字的平均值。
- 扁平化和过滤:
- 给定一个字符串列表
List<String> words = Arrays.asList("hello", "world", "java", "stream", "api");
,将这些字符串扁平化成一个字符列表,并过滤掉所有元音字母。
- 给定一个字符串列表
- 组合使用:
- 对上述字符串列表中的每个字符串,计算其长度,并返回一个包含长度的列表。
- 使用
distinct
:- 给定一个可能包含重复元素的列表
List<Integer> numbersWithDuplicates = Arrays.asList(1, 2, 2, 3, 4, 4, 5);
,使用 Stream API 去除重复的数字。
- 给定一个可能包含重复元素的列表
- 使用
limit
和skip
:- 对一个数字列表使用 Stream API,跳过前 5 个元素,并限制结果只包含接下来的 3 个元素。
- 使用
anyMatch
,allMatch