java-stream相关内容
因此,在当前场景中,我们有一组 API,如下所列: 消费者开始();消费者执行每日聚合();消费者performLastNDaysAggregates();消费者重新填充分数();消费者更新数据存储(); 在这些之上,我们的调度程序之一执行任务,例如 private void performAllTasks(T data) {开始().然后(执行每日聚合()
..
我正在尝试了解新的 Java 8 Stream API. http://docs.oracle.com/javase/tutorial/集合/流/reduction.html 我找到了使用 collect API 查找数字平均值的示例.但我觉得,同样可以使用 reduce() 来完成. 公共类测试{公共静态无效主要(字符串[]参数){//使用收集System.out.println(
..
..
我正在尝试使用 Java 8 流来组合列表.如何从两个现有列表中获取“对称差异列表"(仅存在于一个列表中的所有对象).我知道如何获取相交列表以及如何获取联合列表. 在下面的代码中,我想要两个汽车列表(bigCarList、smallCarList)中不相交的汽车.我希望结果是包含 2 辆车(“Toyota Corolla"和“Ford Focus")的列表 示例代码: public
..
例如有集合 [1,2,3,4,5], [6,7,8], [9,0].任何避免使用迭代器循环以通过 Java 8 流 API 交错这些集合以获得以下结果的方法 - [1,6,9,2,7,0,3,8,4,5]? 解决方案 我不确定 Stream API 是否有更简单的方法,但您可以使用流覆盖所有列表的索引来完成此操作: 静态列出交错(列表>列表){int maxSize = li
..
在我的机器上,下面的程序打印: OptionalLong[134043]并行耗时 127869 毫秒可选长[134043]SERIAL 耗时 60594 毫秒 我不清楚为什么串行执行程序比并行执行要快.我在一个相对安静的 8gb 盒子上给了两个程序 -Xms2g -Xmx2g.有人可以澄清发生了什么吗? import java.util.stream.LongStream;导入 java.u
..
我正在将一段代码从 .NET 移植到 Java,并偶然发现了我想使用流来映射 &减少. 类内容{私有字符串 propA、propB、propC;内容(字符串 a,字符串 b,字符串 c){道具A = a;道具B = b;道具C = c;}public String getA() { return propA;}public String getB() { return propB;}public
..
java.util.stream.Collectors::joining 实现是线程安全的吗?我可以做类似的事情吗 public final class SomeClass {私有静态最终收集器jc = Collectors.joining(",");公共字符串 someMethod(List someList) {返回 someList.par
..
要按升序排序,我可以使用: myMap.entrySet().stream().sorted(Map.Entry.comparingByValue()).collect(Collectors.toMap(Entry::getKey, Entry::getValue)); 如何按降序进行? 解决方案 要逆序排序,请将 Comparator.reverseOrder() 作为参数传递给 c
..
我正在寻找一种简洁的方法来过滤列表中特定索引处的项目.我的示例输入如下所示: ListoriginalList = Arrays.asList(0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0);列表filterIndexes = Arrays.asList(2, 4, 6, 8); 我想过滤掉索引 2、4、6
..
Parent 是一个由 Child 继承的类.由 GrandChild 继承.每个类都包含子类的列表(即父类包含子类列表,子类包含子类列表).每个类包含 50 个属性(attrib1-atrib50).getChildList() 返回 Child 类型对象的 arrayList getGrandChildList() 返回 GrandChild 类型对象的 arrayList 设 resu
..
所以我有一个对象集合,这些对象的步长变量可以是 1 - 4. 公共类 MyClass {私人长步;//其他变量,getter,setter等} 集合myOjbects =/*获取集合*/; 然后我想从集合中获取一个具有最大步长值的 MyClass 实例,所以我这样做: final 可选objectWithMaxStep =myObjects.stream().max(Comparato
..
String[] stringArray = streamString.toArray(size -> new String[size]); 如何自动将大小作为流的大小? 解决方案 Stream API 是围绕 Spliterator 这是一种高级形式的迭代器.这些可以报告某些 特征,允许优化 Stream 将应用的操作.他们还可以报告预期的元素数量,估计 或 精确.Spliterato
..
我有一个包含其他对象列表的对象,我想返回由容器的某些属性映射的包含对象的平面图.是否可以仅使用流和 lambdas? 公开课销售{字符串客户端名称;双倍总数;列表产品;}公共类产品{字符串名称;字符串值;} 让我们假设一个操作列表: 列表操作 = 新的 ArrayList();操作流().filter(s -> s.getTotal > 10).collect(groupin
..
如何使用 Java 8 的流方法拆分奇数和偶数并在集合中求和? 公共类 SplitAndSumOddEven {公共静态无效主要(字符串[]参数){//读取输入尝试(扫描仪扫描仪=新扫描仪(System.in)){//读取需要读取的输入数.int 长度 =scanner.nextInt();//填充输入列表列表inputList = new ArrayList();for (int i
..
Mastering Lambdas 作者 Maurice Naftalin,第 6 章 - 流性能. 有关于流在不同执行阶段(中间和终端)的不同特征的解释.例如. Stream.of(8,3,5,6,7,4)//ORDERED, SIZED.filer(i->i%2==0)//已排序.sorted()//已排序,已排序.distinct()//不同的、有序的、已排序的.map(i->i+1
..
我正在使用 java 8 流 API 对 Store 对象列表执行操作. Store 接受一个 String 参数和一个 Mapper 对象.Mapper 对于所有 Store 对象都是相同的. 问题:当我在 .map(Store::new) 初始化 Store 时如何传递 Mapper 对象? 公共类存储{公共商店(字符串名称,映射器映射器){}}公共类映射器{}公共类测试{公共静
..
我想从 Java 8 Stream 中检索并删除下一个项目,而此 Stream 不会关闭. 流integerStream = Stream.iterate(0, x -> new Integer(x + 1) );整数零 = integerStream.getNext();//0整数一 = integerStream.getNext();//1... 这可能吗? 解决方案 基于 Stu
..
我想通过 1 的每次迭代来增加 index 的值.在for-loop中很容易实现.变量 image 是 ImageView 的数组. 这是我的 for-loop. for (Map.Entryentry : map.entrySet()) {图像[索引].setImage(entry.getValue().getImage());索引++;} 为了练习Stream,我尝试将其重写为Str
..
换句话说,以下行是否保证打印 num 行? int num = list.stream().peek(System.out::println).count(); 这个问题是由 https://stackoverflow.com/a/41346586/2513200 我依稀记得一个讨论,避免迭代的优化可能是合法的,但在快速搜索过程中没有找到任何结论. JavaDocsStream.c
..