list - Scala迭代列表的两个连续元素
问题描述
我们将如何迭代列表的两个连续元素并应用差异函数例如我有这个:
val list = List(List("Eat", "Drink", "Sleep", "work"), List("Eat", "Sleep", "Dance"))
我想遍历这两个连续的元素并计算差异
我已经尝试过了,但我不知道如何迭代每两个连续的元素
list.map((a,b) => a.diff(b))
输出应该是List("Drink", "work")
解决方案
如果我理解正确,您可能想要遍历一个滑动窗口。
list.sliding(2).map{
case List(a, b) => a.diff(b)
case List(a) => a
}.toList
或者,您可能还希望grouped(2)
将列表划分为组。
推荐阅读
- extjs - Ext js 7 现代可调整大小的面板
- reactjs - 对组件的 fetchdata 的反应测试返回“无法读取未定义的属性 'catch'”
- sql-server - SQL Server 抛出错误的 SQL 语法/无效的对象名称 'BATCH_JOB_INSTANCE'
- c# - 提交后如何获取价值 - ASP.NET CORE MVC
- c - 利用linux、scanf和读取权限
- javascript - jQuery getJSON 的 Javascript 返回结果
- python - 如何使用 np.convolve() 在 Python 中创建 Voigt 函数?
- reactjs - 如何在配置文件中使用 NextJS 重定向
- regex - PowerShell 将多行与正则表达式模式匹配
- winapi - boost asio arduino 错误:boost::wrapexcept