如何使用流获取嵌套集合中的所有元素

2024-01-09

我有一个包含不同嵌套集合的类,现在我想接收嵌套集合的所有元素,具体我想收集集合的所有 StrokePoints。我可以用“旧”java解决它,但如何用流来解决它?

    int strokesCounter = 0;
    List<StrokePoint> pointList = new ArrayList<>();
    if (!strokesData.getListOfSessions().isEmpty()) {
        for (SessionStrokes session : strokesData.getListOfSessions()) {
            List<Strokes> strokes = session.getListOfStrokes();
            for (Strokes stroke : strokes) {
                strokesCounter++;
                List<StrokePoint> points = stroke.getListOfStrokePoints();
                pointList.addAll(stroke.getListOfStrokePoints());        
            }
        }
    }

我正在寻找一种用流功能填充 pointList 的方法。


展平嵌套数据非常简单:

List<StrokePoint> pointList = strokesData.getListOfSessions()
        .streams()
        .map(SessionStrokes::getListOfStrokes)
        .flatMap(List::stream)
        .map(Strokes::getListOfStrokePoints)
        .flatMap(List::stream)
        .collect(Collectors.toList());

沿途收集笔划数比较棘手,而且有些争议。你可以创建一个

AtomicInteger strokesCounter = new AtomicInteger();

并在第一个之后立即增加它flatMap:

.peek(strokesCounter::incrementAndGet)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用流获取嵌套集合中的所有元素 的相关文章

  • Java中字符串中特殊字符的替换

    Java中如何替换字符串 E g String a adf sdf 如何替换和避免特殊字符 您可以删除除此之外的所有字符可打印的 ASCII 范围 http en wikipedia org wiki ASCII ASCII printab
  • 如何使用 Java 中的 Web 服务(例如 Axis2)发送复杂对象的数组或集合?

    我对 SOAP Web 服务还比较陌生 虽然我完成了一些较小的 Web 服务项目 但我偶然从来不需要返回 或用作参数 复杂 对象的数组或集合 当我尝试这样做时 根据我的 SOAP 绑定风格 我会得到不同的奇怪行为 当我使用RPC 文字 我可
  • 这个函数(for循环)空间复杂度是O(1)还是O(n)?

    public void check 10 for string i list Integer a hashtable get i if a gt 10 hashtable remove i 这是 O 1 还是 O n 我猜测 O n 但不是
  • Java:如何从转义的 URL 获取文件?

    我收到了一个定位本地文件的 URL 事实上我收到的 URL 不在我的控制范围内 URL 按照 RFC2396 中的定义进行有效转义 如何将其转换为 Java File 对象 有趣的是 URL getFile 方法返回一个字符串 而不是文件
  • org.apache.sling.api.resource,version=[2.3,3) -- 无法解析

    您好 我无法访问我的项目内容 我已经上传了从 CQ 访问内容所需的所有包 我唯一能看到的是 org apache sling api resource version 2 3 3 无法解析 这是否是异常的原因 如果是 请告诉我如何解决 中Q
  • java中如何连接字符串

    这是我的字符串连接代码 StringSecret java public class StringSecret public static void main String args String s new String abc s co
  • 运行具有外部依赖项的 Scala 脚本

    我在 Users joe scala lib 下有以下 jar commons codec 1 4 jar httpclient 4 1 1 jar httpcore 4 1 jar commons logging 1 1 1 jar ht
  • JavaFX 中具有自定义内容的 ListView

    How i can make custom ListView with JavaFx for my app I need HBox with image and 2 Labels for each line listView 您可以通过查看
  • 如何安全地解决这个 Java 上下文类加载器问题?

    我的数百名用户中只有一位在启动我的 Java 桌面应用程序时遇到问题 他只有大约三分之一的时间开始 另外三分之二的时间在启动时抛出 NullPointerException Exception in thread AWT EventQueu
  • Hazelcast 分布式锁与 iMap

    我们目前使用 Hazelcast 3 1 5 我有一个简单的分布式锁定机制 应该可以跨多个 JVM 节点提供线程安全性 代码非常简单 private static HazelcastInstance hInst getHazelcastIn
  • 匿名类上的 NotSerializedException

    我有一个用于过滤项目的界面 public interface KeyValFilter extends Serializable public static final long serialVersionUID 7069537470113
  • Java 8 流 - 合并共享相同 ID 的对象集合

    我有一系列发票 class Invoice int month BigDecimal amount 我想合并这些发票 这样我每个月都会收到一张发票 金额是本月发票金额的总和 例如 invoice 1 month 1 amount 1000
  • 具有 java XSLT 扩展的数组

    我正在尝试使用 java 在 XSLT 扩展中使用数组 我收到以下错误 Caused by java lang ClassCastException org apache xpath objects XObject cannot be ca
  • 将 SignedHash 插入 PDF 中以进行外部签名过程 -workingSample

    遵循电子书第 4 3 3 节 PDF 文档的数字签名 https jira nuxeo com secure attachment 49931 digitalsignatures20130304 pdf 我正在尝试创建一个工作示例 其中 客
  • Java 中的“Lambdifying”scala 函数

    使用Java和Apache Spark 已用Scala重写 面对旧的API方法 org apache spark rdd JdbcRDD构造函数 其参数为 AbstractFunction1 abstract class AbstractF
  • 很好地处理数据库约束错误

    再一次 它应该很简单 我的任务是在我们的应用程序的域对象中放置一个具有唯一约束的特定字段 这本身并不是一个很大的挑战 我刚刚做了以下事情 public class Location more fields Column unique tru
  • 如何在selenium服务器上提供自定义功能?

    我知道可以通过某种方法获得一些硒功能 其中之一如下 driver getCapabilities getBrowserName 它返回浏览器名称的值 但如果它指的是一个可用的方法 如果我没有误解的话 这似乎与自定义功能有关 就像我的意思是
  • Javafx过滤表视图

    我正在尝试使用文本字段来过滤表视图 我想要一个文本字段 txtSearch 来搜索 nhs 号码 名字 姓氏 和 分类类别 我尝试过在线实施各种解决方案 但没有运气 我对这一切仍然很陌生 所以如果问得不好 我深表歉意 任何帮助将不胜感激 我
  • HQL Hibernate 内连接

    我怎样才能在 Hibernate 中编写这个 SQL 查询 我想使用 Hibernate 来创建查询 而不是创建数据库 SELECT FROM Employee e INNER JOIN Team t ON e Id team t Id t
  • 为什么C++代码执行速度比java慢?

    我最近用 Java 编写了一个计算密集型算法 然后将其翻译为 C 令我惊讶的是 C 的执行速度要慢得多 我现在已经编写了一个更短的 Java 测试程序和一个相应的 C 程序 见下文 我的原始代码具有大量数组访问功能 测试代码也是如此 C 的

随机推荐

  • 如何在 Scala/Spark 中从多个 DataFrame 创建包含多个工作表的 Excel 文件?

    In Scala Spark应用程序我创建了两个不同的DataFrame 我的任务是为每个 DataFrame 创建一个包含两个工作表的 Excel 文件 我决定使用火花Excel https github com crealytics s
  • 包含非托管对象的 ConcurrentBag 的完成

    我在正确处理 Dispose Finalization 时遇到问题ConcurrentBag包含非托管对象 运行下面的代码 通常 会产生一个ObjectDisposedException Cannot access a disposed o
  • 在 SwiftUI 中切换视图的最佳方式是什么?

    我尝试了几种在 SwiftUI 中切换视图的选项 然而 每一个都存在一些问题 比如多次来回切换时会出现时间滞后等问题 我正在尝试找到使用 SwiftUI 切换视图的最佳和最干净的方法 我只是想制作一个多视图用户界面 In View1 swi
  • 预定的网络作业

    我正在创建一个新的 Azure WebJob 项目 它似乎是可以作为 Web 作业运行的控制台应用程序的优化版本 我希望这项工作根据时间表运行 但在Main 方法 见下文 微软为您提供了host RunAndBlock 使作业能够连续运行
  • 在 iOS 中创建 RTF 、 DOC 或 DOCX

    我想使用 iOS 应用程序创建以下文件类型之一 RTF DOC 或 DOCX 用户应该能够写文字并且添加图像到它 UI 的构建不是问题 问题只是文件的创建 有没有最佳实践可以做到这一点 第三方框架是一种选择 但我想自己做 Thanks 我可
  • 即使捕获了鼠标,如何才能获取鼠标位置的元素?

    有没有办法获取鼠标位置的元素 我正在使用 Mouse DirectlyOver 仅当鼠标未被捕获时它才能正常工作 如果鼠标被捕获 它会获取鼠标捕获的元素 该元素不一定是鼠标所在位置的元素 事实上 MSDN 文档说 如果某个元素具有鼠标捕获功
  • 哪个是好的开源用户管理系统? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 将 UIView 中的位置转换为 SKScene

    我想在 UIView 中使用 touchBegan 功能 并且应该触发 SKScene 方法 一切都几乎正常 除了我的 SKNode 的起始位置与 UIView 中的触摸不同之外 我在这里读到 Swift 中令人困惑的反向触摸事件 http
  • 查找 3 个输入的最大值 VBA

    我正在尝试找到最多 3 个输入 问题不在于算法 因为当我在 python 中制作相同的脚本时 它工作得很好 问题是它没有按预期工作 我将写一些场景以及结果 8 5 12 最多 125 8 12 最多 1212 5 8 最多 812 8 5
  • 用于选择首选糖果的高效 SQL 2000 查询

    我希望我能想出一个更具描述性的标题 如果您能说出我要询问的查询类型 请建议一个或编辑这篇文章 数据库 SQL Server 2000 示例数据 假设 500 000 行 Name Candy PreferenceFactor Jim Cho
  • 获取 XPath 中标签后面的文本

    我正在尝试使用 Selenium 进行一些测试 但遇到了一些问题 假设我有以下内容 div class itemize row p class subText span class item label Card Color span Ma
  • Action 到子动作的链接

    我已经调用了另一个视图Html Action方法 当用户单击操作链接时 我想在子视图内使用参数调用相同的操作 当我编写此代码时 我收到此错误消息 Html ActionLink link Configure new id 2 配置 操作只能
  • Cron 不将参数传递给 PHP 脚本

    我有一个 cron 作业集 例如 php home novinarb public html index php uri cron 24satahr 但 uri 参数根本没有到达 php 脚本 我也尝试过在 uri 前面没有 但仍然没有 有
  • Swing:JTable 结构更改后 JScrollPane 不刷新

    我有一个 JTable 与 DefaultTableModel 关联 位于 JPanel 中 SpringLayout 位于 JScrollPane 中 当我使用下面的方法修改 DefaultTableModel 的结构时 JTable 会
  • Hibernate createNativeQuery 返回 Clob 的代理对象

    我被迫陷入使用 hibernate createNativeQuery 返回对象数组列表的情况 我的查询返回值的 许多 列之一是 CLOB 返回的对象是 com sun Proxy 对象 我看到一个问题here https stackove
  • 如何通过XML在Spring bean中设置XmlAdapters的Jaxb2Marshaller列表?

    我正在尝试定义一个Jaxb2MarshallerSpring WS 中的 bean 使用扩展的自定义适配器XmlAdapter 我的 XML 文件中有以下内容
  • 文本聚类主题建模效率低下

    我尝试使用 LDA 进行文本聚类 但它没有给我不同的聚类 下面是我的代码 Import libraries from gensim import corpora models import pandas as pd from gensim
  • 什么是脚手架?它是特定平台的术语吗?

    脚手架 是什么 这是仅限 Rails 的东西吗 脚手架通常是指快速设置应用程序的骨架 它不仅仅是 Rails 因为其他平台也有它 它通常也不意味着是一个 最终 系统 只是第一个 最小的方法
  • 在 Python 中使用 Re 删除双空格/制表符组合

    我想使用 Re 模块将 Python 中存在连续制表符和 或空格的所有实例替换为单个空格 我不想删除新行 这排除了 s 推荐 目前我有 formateed string re sub t formateed string formateed
  • 如何使用流获取嵌套集合中的所有元素

    我有一个包含不同嵌套集合的类 现在我想接收嵌套集合的所有元素 具体我想收集集合的所有 StrokePoints 我可以用 旧 java解决它 但如何用流来解决它 int strokesCounter 0 List