scala - 如何将 List[List[Long]] 转换为 List[List[Int]]?
问题描述
在 Scala 中将a 转换List[List[Long]]
为 a的最佳方法是什么?List[List[Int]]
例如,给定以下类型列表List[List[Long]]
val l: List[List[Long]] = List(List(11, 10, 11, 10, 11), List(8, 19, 24, 0, 2))
它如何转换为List[List[Int]]
?
解决方案
您也可以cats
为此使用 lib 并编写List
仿函数
import cats.Functor
import cats.implicits._
import cats.data._
val l: List[List[Long]] = List(List(11, 10, 11, 10, 11), List(8, 19, 24, 0, 2))
Functor[List].compose[List].map(l)(_.toInt)
//or
Nested(l).map(_.toInt).value
和另一种纯粹的 scala 方法(虽然不是很安全)
val res:List[List[Int]] = l.asInstanceOf[List[List[Int]]]
推荐阅读
- bintray - 无法访问 Bintray 帐户
- python - 我应该如何使用 pip 安装软件包?
- c# - 如何在 ASP.NET 中将值从视图传递到存储库?
- java - 在 HTTP 安全配置 authorizeRequests() 上获取声纳严重缺陷
- node.js - Angular PreRendering / Ng Universal 部署
- r - 具有两个变量但仅显示一个构面标签的构面网格
- ocaml - 禁用 ocaml opam 中的可选依赖项安装
- python - 当我只需要它循环一次时,程序循环了两次
- xcode - 现在在 Xcode 中禁用了允许并排查看两个文件的按钮
- css - 我对小屏幕的媒体查询没有按照应有的方式堆叠