我最近遇到一个面试问题,要求我从列表
中筛选出奇数和偶数。唯一的问题是,我不能使用以下两种过滤器:
List<Integer> nums = Arrays.asList(1,2,3,4,5);
List<Integer> odd = nums.stream().filter(n -> n%2 != 0).collect(Collectors.toList());
List<Integer> even = nums.stream().filter(n -> n%2 == 0).collect(Collectors.toList());
我说这是不可能的,因为最终的收集
方法只能返回1个单列表。
我错过了什么?
您可以使用Collectors.partitioningBy
:
Map<Boolean, List<Integer>> response = nums.stream()
.collect(Collectors.partitioningBy(n -> n % 2 == 0));
这将返回:
{false=[1, 3, 5], true=[2, 4]}
要将它们分开,您可以使用:
List<Integer> evens = response.get(true);
List<Integer> odds = response.get(false);
本文向大家介绍奇数和偶数之和之间的差。,包括了奇数和偶数之和之间的差。的使用技巧和注意事项,需要的朋友参考一下 问题陈述 对于给定的长整数n,编写一个程序以查找奇数位和偶数位总和之间的差是否为0。索引从0开始。 示例 示例 以下是Java中的程序,用于查找所需的输出。 输出结果
问题内容: 我在此站点上看到了此代码。它使用一种方法来对数组进行排序,其中偶数排在数组的前面,而奇数排在数组的后面。我想知道您是否可以做同样的事情,除了先显示奇数,然后再显示偶数?我试过了,但无济于事。我是Java编程的新手,我想测试递归。 } 输出是这样的: 问题答案: 好吧,如果你想单号是第一位的,取代任何与任何带:
为了解决新增特性可能带来的不稳定,我们制定了类似Linux内核的奇偶数单双号策略。在此约定: 奇数单号版本为“新特性版本” 如1.7.5,所有新增特性,必须在第3位为奇数单号的版本中发布。奇数版本也可以包含已知BUG修复。 偶数双号版本为“问题修复版本” 如1.7.6,第3位为偶数双号的版本中不得包含任何新特性。全部修改均为对已知BUG的修复。 这类版本是以稳定性为核心目标。 所以swoole中所
下面写的代码是正确的,但我想缩短这段代码。 用java编写一个程序,在单维数组中输入10个数字,并以所有偶数后面跟着所有奇数的方式排列它们。 我能把偶数和奇数安排在一个for循环中而不是两个for循环中吗?我使用双for循环将偶数和奇数转换为数组。请缩短代码。一个用于检查偶数的循环遍历,另一个用于检查奇数。
我有一个字符串在C#与"维基语法",我想取代的值。 问题是,我想将成对的值替换为不同的值。
问题内容: 给定一个整数数组,您需要将数组中的奇数和偶数分开。 请注意:元素的顺序可以更改。 例如: 问题答案: 让我们说数组是 初始化两个索引变量, 和 增加左变量直到你得到奇数 递减右边的变量,直到你得到偶数。 如果 ,交换 和 最后,您会看到左侧有偶数,右侧有奇数。 用于分隔数组中奇数和偶数的 Java 代码: 当你运行上面的程序时,你会得到以下输出: